/* ============================================================
   RetroApp Suite – styles.min.css
   Zastępuje: <script src="https://cdn.tailwindcss.com"></script>
   Użycie:    <link rel="stylesheet" href="/assets/css/styles.min.css">
   ============================================================ */

/* === RESET / BASE === */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
body{margin:0;line-height:inherit}
a{color:inherit;text-decoration:inherit}
strong{font-weight:bolder}
ul{list-style:none;margin:0;padding:0}

/* === CUSTOM (z <style> w pliku) === */
.gradient-text{background-clip:text;-webkit-background-clip:text;color:transparent;background-image:linear-gradient(to right,#2563EB,#9333EA)}
.hero-bg{background:radial-gradient(circle at 50% 0%,#fff7ed 0%,#ffffff 70%)}
.animate-fade-in-up{animation:fadeInUp .8s ease-out}
@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.taskflow-accent{background:linear-gradient(to bottom right,#ffffff,#fff7ed)}

/* === LAYOUT === */
.block{display:block}
.flex{display:flex}
.grid{display:grid}
.hidden{display:none}
.inline-block{display:inline-block}
.inline-flex{display:inline-flex}
.fixed{position:fixed}
.absolute{position:absolute}
.relative{position:relative}
.overflow-hidden{overflow:hidden}
.w-full{width:100%}
.h-full{height:100%}
.min-h-screen{min-height:100vh}
.z-10{z-index:10}
.z-50{z-index:50}
.top-0{top:0}
.right-0{right:0}
.left-0{left:0}

/* === SIZING === */
.w-2{width:.5rem}.h-2{height:.5rem}
.w-12{width:3rem}.h-12{height:3rem}
.w-14{width:3.5rem}.h-14{height:3.5rem}
.w-24{height:6rem;width:6rem}.h-24{height:6rem}
.w-64{width:16rem}.h-64{height:16rem}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-5xl{max-width:64rem}
.max-w-6xl{max-width:72rem}
.max-w-7xl{max-width:80rem}
.max-w-\[90rem\]{max-width:90rem}
.mx-auto{margin-left:auto;margin-right:auto}

/* === SPACING === */
.p-2\.5{padding:.625rem}
.p-4{padding:1rem}
.p-8{padding:2rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.px-8{padding-left:2rem;padding-right:2rem}
.px-10{padding-left:2.5rem;padding-right:2.5rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.py-24{padding-top:6rem;padding-bottom:6rem}
.pt-32{padding-top:8rem}
.pb-20{padding-bottom:5rem}
.pt-4{padding-top:1rem}
.mb-2{margin-bottom:.5rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.mb-10{margin-bottom:2.5rem}
.mb-12{margin-bottom:3rem}
.mb-16{margin-bottom:4rem}
.mt-1{margin-top:.25rem}
.mt-6{margin-top:1.5rem}
.mt-auto{margin-top:auto}
.-mr-6{margin-right:-1.5rem}
.-mt-6{margin-top:-1.5rem}
.-mr-16{margin-right:-4rem}
.-mt-16{margin-top:-4rem}

/* === FLEXBOX / GRID === */
.flex-col{flex-direction:column}
.flex-grow{flex-grow:1}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.gap-2{gap:.5rem}
.gap-3{gap:.75rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}
.gap-12{gap:3rem}
.shrink-0{flex-shrink:0}
.space-y-6>*+*{margin-top:1.5rem}
.space-y-8>*+*{margin-top:2rem}
.space-x-6>*+*{margin-left:1.5rem}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}

/* === TYPOGRAPHY === */
.font-sans{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.text-xs{font-size:.75rem;line-height:1rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-md{font-size:1rem;line-height:1.5rem}
.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-5xl{font-size:3rem;line-height:1}
.text-2xl{font-size:1.5rem;line-height:2rem}
.font-medium{font-weight:500}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.leading-tight{line-height:1.25}
.leading-relaxed{line-height:1.625}
.tracking-tight{letter-spacing:-.025em}
.tracking-wider{letter-spacing:.05em}
.uppercase{text-transform:uppercase}
.text-center{text-align:center}
.text-left{text-align:left}

/* === COLORS – text === */
.text-white{color:#fff}
.text-gray-400{color:#9ca3af}
.text-gray-500{color:#6b7280}
.text-gray-600{color:#4b5563}
.text-gray-700{color:#374151}
.text-gray-800{color:#1f2937}
.text-gray-900{color:#111827}
.text-blue-600{color:#2563eb}
.text-indigo-600{color:#4f46e5}
.text-indigo-700{color:#4338ca}
.text-orange-600{color:#ea580c}
.text-orange-700{color:#c2410c}
.text-red-600{color:#dc2626}
.text-teal-600{color:#0d9488}
.text-sky-600{color:#0284c7}
.text-cyan-600{color:#0891b2}
.text-pink-600{color:#db2777}
.text-purple-600{color:#9333ea}
.text-fuchsia-600{color:#c026d3}
.text-green-600{color:#16a34a}

/* === COLORS – background === */
.bg-white{background-color:#fff}
.bg-gray-50{background-color:#f9fafb}
.bg-gray-900{background-color:#111827}
.bg-black{background-color:#000}
.bg-blue-600{background-color:#2563eb}
.bg-indigo-50{background-color:#eef2ff}
.bg-indigo-100{background-color:#e0e7ff}
.bg-orange-100{background-color:#ffedd5}
.bg-orange-500{background-color:#f97316}
.bg-red-100{background-color:#fee2e2}
.bg-teal-100{background-color:#ccfbf1}
.bg-sky-100{background-color:#e0f2fe}
.bg-sky-50{background-color:#f0f9ff}
.bg-cyan-100{background-color:#cffafe}
.bg-cyan-50{background-color:#ecfeff}
.bg-pink-100{background-color:#fce7f3}
.bg-pink-50{background-color:#fdf2f8}
.bg-purple-100{background-color:#f3e8ff}
.bg-purple-50{background-color:#faf5ff}
.bg-fuchsia-100{background-color:#fae8ff}
.bg-fuchsia-50{background-color:#fdf4ff}
.bg-green-100{background-color:#dcfce7}
.bg-blue-50{background-color:#eff6ff}
.bg-blue-100{background-color:#dbeafe}
.bg-indigo-600{background-color:#4f46e5}
.bg-transparent{background-color:transparent}

/* === BORDER === */
.border{border-width:1px}
.border-b{border-bottom-width:1px}
.border-t{border-top-width:1px}
.border-gray-100{border-color:#f3f4f6}
.border-gray-200{border-color:#e5e7eb}
.border-gray-600{border-color:#4b5563}
.border-indigo-100{border-color:#e0e7ff}
.border-orange-200{border-color:#fed7aa}
.border-orange-200\/50{border-color:rgba(254,215,170,.5)}
.border-transparent{border-color:transparent}

/* === ROUNDED === */
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.rounded-2xl{border-radius:1rem}
.rounded-3xl{border-radius:1.5rem}
.rounded-bl-full{border-bottom-left-radius:9999px}

/* === SHADOWS === */
.shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}
.shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}
.shadow-xl{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}
.shadow-blue-500\/30{box-shadow:0 10px 15px -3px rgba(37,99,235,.3)}

/* === BACKDROP / BLUR === */
.backdrop-blur-md{backdrop-filter:blur(12px)}
.bg-white\/90{background-color:rgba(255,255,255,.9)}
.blur-3xl{filter:blur(64px)}

/* === OPACITY === */
.opacity-10{opacity:.1}
.opacity-50{opacity:.5}

/* === TRANSITIONS === */
.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.duration-300{transition-duration:300ms}
.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}

/* === TRANSFORMS === */
.transform{transform:translateX(0) translateY(0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1)}

/* === ANIMATE === */
.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}

/* === GROUP HOVER (CSS custom) === */
.group:hover .group-hover\:shadow-xl{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}
.group:hover .group-hover\:-translate-y-1{transform:translateY(-.25rem)}
.group:hover .group-hover\:scale-110{transform:scale(1.1)}
.group:hover .group-hover\:text-orange-600{color:#ea580c}
.group:hover .group-hover\:text-indigo-600{color:#4f46e5}
.group:hover .group-hover\:text-blue-600{color:#2563eb}
.group:hover .group-hover\:text-red-600{color:#dc2626}
.group:hover .group-hover\:text-teal-600{color:#0d9488}
.group:hover .group-hover\:text-sky-600{color:#0284c7}
.group:hover .group-hover\:text-cyan-600{color:#0891b2}
.group:hover .group-hover\:text-pink-600{color:#db2777}
.group:hover .group-hover\:text-purple-600{color:#9333ea}
.group:hover .group-hover\:text-fuchsia-600{color:#c026d3}

/* === HOVER === */
.hover\:opacity-80:hover{opacity:.8}
.hover\:text-blue-600:hover{color:#2563eb}
.hover\:text-gray-900:hover{color:#111827}
.hover\:bg-black:hover{background-color:#000}
.hover\:bg-blue-700:hover{background-color:#1d4ed8}
.hover\:bg-blue-500:hover{background-color:#3b82f6}
.hover\:bg-gray-800:hover{background-color:#1f2937}
.hover\:bg-blue-50:hover{background-color:#eff6ff}
.hover\:bg-purple-50:hover{background-color:#faf5ff}
.hover\:bg-green-50:hover{background-color:#f0fdf4}
.hover\:bg-indigo-200:hover{background-color:#c7d2fe}
.hover\:border-gray-400:hover{border-color:#9ca3af}
.hover\:border-blue-100:hover{border-color:#dbeafe}
.hover\:border-purple-100:hover{border-color:#e9d5ff}
.hover\:border-green-100:hover{border-color:#bbf7d0}
.hover\:border-indigo-200:hover{border-color:#c7d2fe}
.hover\:border-blue-200:hover{border-color:#bfdbfe}
.hover\:border-red-200:hover{border-color:#fecaca}
.hover\:border-teal-200:hover{border-color:#99f6e4}
.hover\:border-sky-200:hover{border-color:#bae6fd}
.hover\:border-cyan-200:hover{border-color:#a5f3fc}
.hover\:border-pink-200:hover{border-color:#fbcfe8}
.hover\:border-purple-200:hover{border-color:#e9d5ff}
.hover\:border-fuchsia-200:hover{border-color:#f5d0fe}
.hover\:shadow-xl:hover{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}
.hover\:-translate-y-1:hover{transform:translateY(-.25rem)}
.hover\:scale-105:hover{transform:scale(1.05)}
.hover\:underline:hover{text-decoration:underline}

/* === RESPONSIVE – md (768px) === */
@media (min-width:768px){
  .md\:flex{display:flex}
  .md\:flex-row{flex-direction:row}
  .md\:text-left{text-align:left}
  .md\:text-5xl{font-size:3rem;line-height:1}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* === RESPONSIVE – sm (640px) === */
@media (min-width:640px){
  .sm\:flex-row{flex-direction:row}
}

/* === RESPONSIVE – lg (1024px) === */
@media (min-width:1024px){
  .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* === RESPONSIVE – md text-7xl === */
@media (min-width:768px){
  .md\:text-7xl{font-size:4.5rem;line-height:1}
}

/* === MISC === */
.h-20{height:5rem}
.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}
.from-blue-600{--tw-gradient-from:#2563eb;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,rgba(37,99,235,0))}
.to-indigo-600{--tw-gradient-to:#4f46e5}
.bg-\[url\(\'https\:\/\/www\.transparenttextures\.com\/patterns\/cubes\.png\'\)\]{background-image:url('https://www.transparenttextures.com/patterns/cubes.png')}
