/*! Tailwind CSS v3 — Production build for CompSjid (only used utilities) */

/* ── Reset (Tailwind Preflight subset) ── */
*,::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,sans-serif}
body{margin:0;line-height:inherit}
hr{height:0;color:inherit;border-top-width:1px}
abbr:where([title]){text-decoration:underline dotted}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
code,kbd,samp,pre{font-family:ui-monospace,monospace;font-size:1em}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-0.25em}sup{top:-0.5em}
table{text-indent:0;border-color:inherit;border-collapse:collapse}
button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}
button,select{text-transform:none}
button,[type='button'],[type='reset'],[type='submit']{-webkit-appearance:button;appearance:button;background-color:transparent;background-image:none}
:-moz-focusring{outline:auto}
:-moz-ui-invalid{box-shadow:none}
progress{vertical-align:baseline}
::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}
[type='search']{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px}
::-webkit-search-decoration{-webkit-appearance:none}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
summary{display:list-item}
blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}
fieldset{margin:0;padding:0}
legend{padding:0}
ol,ul,menu{list-style:none;margin:0;padding:0}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}
button,[role="button"]{cursor:pointer}
:disabled{cursor:default}
img,svg,video,canvas,audio,iframe,embed,object{display:block}
img,video{max-width:100%;height:auto}
[hidden]{display:none}

/* ── Layout ── */
.container{width:100%}
.block{display:block}
.inline-block{display:inline-block}
.inline-flex{display:inline-flex}
.flex{display:flex}
.inline{display:inline}
.hidden{display:none}
.grid{display:grid}
.table{display:table}

/* ── Position ── */
.static{position:static}
.fixed{position:fixed}
.absolute{position:absolute}
.relative{position:relative}
.sticky{position:sticky}

/* ── Inset ── */
.inset-0{inset:0px}
.top-0{top:0px}
.right-0{right:0px}
.bottom-0{bottom:0px}
.left-0{left:0px}
.top-4{top:1rem}
.right-4{right:1rem}
.top-1\/2{top:50%}
.top-full{top:100%}
.top-24{top:6rem}
.top-40{top:10rem}
.top-60{top:15rem}
.top-1\/3{top:33.333333%}
.right-8{right:2rem}
.right-12{right:3rem}
.right-1\/4{right:25%}
.right-1\/3{right:33.333333%}
.bottom-24{bottom:6rem}
.bottom-32{bottom:8rem}
.bottom-40{bottom:10rem}
.left-8{left:2rem}
.left-16{left:4rem}
.left-1\/3{left:33.333333%}

/* ── Visibility ── */
.visible{visibility:visible}
.invisible{visibility:hidden}
.pointer-events-none{pointer-events:none}
.select-none{user-select:none;-webkit-user-select:none}

/* ── Overflow ── */
.overflow-hidden{overflow:hidden}
.overflow-x-hidden{overflow-x:hidden}
.overflow-auto{overflow:auto}
.overflow-x-auto{overflow-x:auto}

/* ── Z-index ── */
.z-10{z-index:10}
.z-50{z-index:50}

/* ── Flex ── */
.flex-1{flex:1 1 0%}
.flex-auto{flex:1 1 auto}
.flex-shrink-0{flex-shrink:0}
.flex-grow{flex-grow:1}
.flex-wrap{flex-wrap:wrap}
.flex-nowrap{flex-wrap:nowrap}
.shrink-0{flex-shrink:0}
.flex-col{flex-direction:column}
.flex-row{flex-direction:row}
.items-start{align-items:flex-start}
.items-center{align-items:center}
.items-end{align-items:flex-end}
.justify-start{justify-content:flex-start}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.justify-end{justify-content:flex-end}

/* ── Grid ── */
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.col-span-1{grid-column:span 1/span 1}

/* ── Gap ── */
.gap-1{gap:.25rem}
.gap-1\.5{gap:.375rem}
.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}
.gap-12{gap:3rem}

/* ── Spacing — margin ── */
.mx-auto{margin-left:auto;margin-right:auto}
.mx-1{margin-left:.25rem;margin-right:.25rem}
.ml-auto{margin-left:auto}
.mt-0\.5{margin-top:.125rem}
.mt-1{margin-top:.25rem}
.mt-2{margin-top:.5rem}
.mt-4{margin-top:1rem}
.mt-8{margin-top:2rem}
.mt-16{margin-top:4rem}
.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}
.mb-16{margin-bottom:4rem}
.my-1{margin-top:.25rem;margin-bottom:.25rem}

/* ── Spacing — padding ── */
.p-4{padding:1rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.p-10{padding:2.5rem}
.px-2\.5{padding-left:.625rem;padding-right:.625rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.py-1{padding-top:.25rem;padding-bottom:.25rem}
.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.py-24{padding-top:6rem;padding-bottom:6rem}
.pb-1{padding-bottom:.25rem}
.pb-4{padding-bottom:1rem}
.pt-2{padding-top:.5rem}
.pt-3{padding-top:.75rem}
.pt-4{padding-top:1rem}
.pt-6{padding-top:1.5rem}
.pt-20{padding-top:5rem}
.pl-10{padding-left:2.5rem}
.pr-4{padding-right:1rem}

/* ── Width ── */
.w-2{width:.5rem}
.w-4{width:1rem}
.w-5{width:1.25rem}
.w-6{width:1.5rem}
.w-8{width:2rem}
.w-9{width:2.25rem}
.w-10{width:2.5rem}
.w-12{width:3rem}
.w-14{width:3.5rem}
.w-20{width:5rem}
.w-56{width:14rem}
.w-72{width:18rem}
.w-full{width:100%}
.min-w-\[220px\]{min-width:220px}
.max-w-2xl{max-width:42rem}
.max-w-5xl{max-width:64rem}
.max-w-7xl{max-width:80rem}

/* ── Height ── */
.h-2{height:.5rem}
.h-4{height:1rem}
.h-5{height:1.25rem}
.h-6{height:1.5rem}
.h-8{height:2rem}
.h-9{height:2.25rem}
.h-10{height:2.5rem}
.h-12{height:3rem}
.h-14{height:3.5rem}
.h-20{height:5rem}
.h-40{height:10rem}
.h-72{height:18rem}
.h-full{height:100%}
.min-h-screen{min-height:100vh}

/* ── Typography ── */
.font-black{font-weight:900}
.font-bold{font-weight:700}
.font-semibold{font-weight:600}
.font-medium{font-weight:500}
.font-normal{font-weight:400}
.text-xs{font-size:.75rem;line-height:1rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-base{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-4xl{font-size:2.25rem;line-height:2.5rem}
.text-5xl{font-size:3rem;line-height:1}
.text-7xl{font-size:4.5rem;line-height:1}
.text-center{text-align:center}
.text-left{text-align:left}
.text-right{text-align:right}
.leading-tight{line-height:1.25}
.leading-relaxed{line-height:1.625}
.tracking-wider{letter-spacing:.05em}
.uppercase{text-transform:uppercase}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.whitespace-nowrap{white-space:nowrap}
.resize-none{resize:none}

/* ── Colors ── */
.text-white{color:#fff}
.text-white\/50{color:rgba(255,255,255,.5)}
.text-white\/70{color:rgba(255,255,255,.7)}
.text-blue-200{color:#bfdbfe}
.text-blue-300{color:#93c5fd}
.text-green-400{color:#4ade80}

/* ── Background ── */
.bg-green-400{background-color:#4ade80}
.bg-white\/10{background-color:rgba(255,255,255,.1)}
.bg-blue-50{background-color:#eff6ff}
.bg-black{background-color:#000}
.bg-red-100{background-color:#fee2e2}
.bg-green-100{background-color:#dcfce7}
.bg-blue-400\/30{background-color:rgba(96,165,250,.3)}

/* ── Border ── */
.border{border-width:1px}
.border-2{border-width:2px}
.border-t{border-top-width:1px}
.border-b{border-bottom-width:1px}
.border-white\/10{border-color:rgba(255,255,255,.1)}
.border-blue-400\/30{border-color:rgba(96,165,250,.3)}
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.rounded-2xl{border-radius:1rem}
.rounded-3xl{border-radius:1.5rem}
.rounded-full{border-radius:9999px}

/* ── Shadow ── */
.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\/20{--tw-shadow-color:rgba(59,130,246,.2)}

/* ── Opacity ── */
.opacity-10{opacity:.1}
.opacity-20{opacity:.2}
.opacity-30{opacity:.3}
.opacity-40{opacity:.4}
.opacity-60{opacity:.6}

/* ── Object fit ── */
.object-cover{object-fit:cover}

/* ── Space between ── */
.space-y-1>:not([hidden])~:not([hidden]){margin-top:.25rem}
.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem}
.space-y-3>:not([hidden])~:not([hidden]){margin-top:.75rem}
.space-y-4>:not([hidden])~:not([hidden]){margin-top:1rem}
.space-y-5>:not([hidden])~:not([hidden]){margin-top:1.25rem}
.space-y-6>:not([hidden])~:not([hidden]){margin-top:1.5rem}
.divide-y>:not([hidden])~:not([hidden]){border-top-width:1px}

/* ── Transitions ── */
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.transition-colors{transition-property:color,background-color,border-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.duration-200{transition-duration:200ms}
.duration-300{transition-duration:300ms}

/* ── Transform ── */
.-translate-y-1\/2{transform:translateY(-50%)}
.translate-y-0{transform:translateY(0)}
.scale-110{transform:scale(1.1)}

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

/* ── Text colors ── */
.text-red-700{color:#b91c1c}
.text-green-700{color:#15803d}

/* ── Scroll ── */
.scroll-smooth{scroll-behavior:smooth}

/* ══════════════════ RESPONSIVE ══════════════════ */

/* sm: 640px */
@media (min-width:640px){
  .sm\:flex-nowrap{flex-wrap:nowrap}
  .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\:inline{display:inline}
}

/* md: 768px */
@media (min-width:768px){
  .md\:flex{display:flex}
  .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\:gap-8{gap:2rem}
  .md\:gap-12{gap:3rem}
  .md\:h-5{height:1.25rem}
  .md\:h-96{height:24rem}
  .md\:w-5{width:1.25rem}
  .md\:w-96{width:24rem}
  .md\:px-8{padding-left:2rem;padding-right:2rem}
  .md\:py-0{padding-top:0;padding-bottom:0}
  .md\:py-4{padding-top:1rem;padding-bottom:1rem}
  .md\:space-y-8>:not([hidden])~:not([hidden]){margin-top:2rem}
  .md\:text-3xl{font-size:1.875rem;line-height:2.25rem}
  .md\:text-5xl{font-size:3rem;line-height:1}
  .md\:text-lg{font-size:1.125rem;line-height:1.75rem}
  .md\:text-sm{font-size:.875rem;line-height:1.25rem}
}

/* lg: 1024px */
@media (min-width:1024px){
  .lg\:col-span-4{grid-column:span 4/span 4}
  .lg\:col-span-8{grid-column:span 8/span 8}
  .lg\:gap-8{gap:2rem}
  .lg\:grid{display:grid}
  .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
  .lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}
  .lg\:mb-0{margin-bottom:0}
}

/* Hover states */
.hover\:bg-blue-50:hover{background-color:#eff6ff}
.hover\:bg-black:hover{background-color:#000}
.hover\:bg-\[\#1877F2\]:hover{background-color:#1877F2}
.hover\:bg-\[\#FF0000\]:hover{background-color:#FF0000}
.hover\:scale-110:hover{transform:scale(1.1)}
.hover\:scale-\[1\.01\]:hover{transform:scale(1.01)}
