/* dx-utils.css — dxb-css 정적 빌드 (v1.7.11)
   dxb-css.js 런타임 제거 → JS reflow 없음 */

/* ── Display ── */
.block{display:block}.inline{display:inline}.inline-block{display:inline-block}
.inline-flex{display:inline-flex}.flex{display:flex}.grid{display:grid}.hidden{display:none}

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

/* ── Grid ── */
.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))}
@media(min-width:640px){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ── 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-x-5{column-gap:1.25rem}.gap-y-2{row-gap:.5rem}

/* ── Padding ── */
.p-0{padding:0}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}
.p-7{padding:1.75rem}.p-8{padding:2rem}
.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}
.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}
.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-7{padding-left:1.75rem;padding-right:1.75rem}
.px-8{padding-left:2rem;padding-right:2rem}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.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-5{padding-top:1.25rem;padding-bottom:1.25rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}
.py-8{padding-top:2rem;padding-bottom:2rem}.py-12{padding-top:3rem;padding-bottom:3rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}
.pt-7{padding-top:1.75rem}.pt-8{padding-top:2rem}
.pb-1{padding-bottom:.25rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}
.pb-8{padding-bottom:2rem}
.pl-3{padding-left:.75rem}.pl-9{padding-left:2.25rem}
.pr-8{padding-right:2rem}.pr-10{padding-right:2.5rem}

/* ── Margin ── */
.m-0{margin:0}
.mx-auto{margin-left:auto;margin-right:auto}.mx-7{margin-left:1.75rem;margin-right:1.75rem}
.mx-8{margin-left:2rem;margin-right:2rem}
.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}
.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-5{margin-top:1.25rem}
.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}
.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}
.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}
.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}

/* ── Sizing ── */
.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-10{width:2.5rem}
.w-16{width:4rem}.w-32{width:8rem}.w-full{width:100%}
.h-2{height:.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}
.h-10{height:2.5rem}.h-16{height:4rem}.h-full{height:100%}
.min-w-0{min-width:0}
.max-w-\[1200px\]{max-width:1200px}.max-w-\[380px\]{max-width:380px}
.max-w-\[200px\]{max-width:200px}.max-w-\[420px\]{max-width:420px}
.max-w-\[460px\]{max-width:460px}.max-w-md{max-width:28rem}

/* ── Position ── */
.relative{position:relative}.absolute{position:absolute}
.fixed{position:fixed}.sticky{position:sticky}
.top-1\/2{top:50%}.right-3{right:.75rem}

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

/* ── Text ── */
.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-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}
.text-\[\.55rem\]{font-size:.55rem}.text-\[\.6rem\]{font-size:.6rem}
.text-\[\.65rem\]{font-size:.65rem}.text-\[\.67rem\]{font-size:.67rem}
.text-\[\.68rem\]{font-size:.68rem}.text-\[\.7rem\]{font-size:.7rem}
.text-\[\.9rem\]{font-size:.9rem}.text-\[1\.25rem\]{font-size:1.25rem}
.text-\[6rem\]{font-size:6rem}
.whitespace-nowrap{white-space:nowrap}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.leading-none{line-height:1}.leading-tight{line-height:1.25}
.leading-relaxed{line-height:1.625}.leading-\[1\.85\]{line-height:1.85}
.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}

/* ── Font weight ── */
.font-medium{font-weight:500}.font-400{font-weight:400}.font-500{font-weight:500}
.font-600{font-weight:600}.font-700{font-weight:700}.font-800{font-weight:800}
.font-900{font-weight:900}

/* ── Text colors ── */
.text-white{color:#fff}
.text-slate-200{color:#e2e8f0}.text-slate-300{color:#cbd5e1}.text-slate-400{color:#94a3b8}
.text-slate-500{color:#64748b}.text-slate-600{color:#475569}.text-slate-700{color:#334155}
.text-slate-800{color:#1e293b}.text-slate-900{color:#0f172a}
.text-blue-200{color:#bfdbfe}.text-blue-400{color:#60a5fa}.text-blue-500{color:#3b82f6}
.text-blue-600{color:#2563eb}.text-blue-700{color:#1d4ed8}
.text-amber-400{color:#fbbf24}.text-amber-500{color:#f59e0b}.text-amber-600{color:#d97706}
.text-emerald-400{color:#4ade80}.text-emerald-500{color:#10b981}
.text-red-400{color:#f87171}.text-red-500{color:#ef4444}.text-red-600{color:#dc2626}
.text-rose-300{color:#fda4af}.text-rose-400{color:#fb7185}
.text-indigo-400{color:#818cf8}.text-indigo-600{color:#4f46e5}
.text-purple-600{color:#9333ea}.text-violet-500{color:#8b5cf6}

/* ── Background colors ── */
.bg-white{background-color:#fff}.bg-transparent{background-color:transparent}
.bg-slate-50{background-color:#f8fafc}.bg-slate-100{background-color:#f1f5f9}
.bg-slate-200{background-color:#e2e8f0}
.bg-blue-50{background-color:#eff6ff}.bg-blue-100{background-color:#dbeafe}
.bg-blue-500{background-color:#3b82f6}
.bg-red-50{background-color:#fef2f2}
.bg-amber-50{background-color:#fffbeb}
.bg-purple-50{background-color:#faf5ff}

/* ── Border ── */
.border{border-width:1px;border-style:solid}.border-0{border-width:0}
.border-2{border-width:2px;border-style:solid}
.border-t{border-top-width:1px;border-top-style:solid}
.border-b{border-bottom-width:1px;border-bottom-style:solid}
.border-none{border-style:none}.border-dashed{border-style:dashed}
.border-slate-50{border-color:#f8fafc}.border-slate-100{border-color:#f1f5f9}
.border-slate-200{border-color:#e2e8f0}
.border-blue-100{border-color:#dbeafe}.border-blue-200{border-color:#bfdbfe}
.border-blue-300{border-color:#93c5fd}
.border-red-100{border-color:#fee2e2}

/* ── Border radius ── */
.rounded{border-radius:.25rem}.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-sm{box-shadow:0 1px 2px 0 rgb(0 0 0/.05)}
.shadow-2xl{box-shadow:0 25px 50px -12px rgb(0 0 0/.25)}

/* ── Cursor ── */
.cursor-pointer{cursor:pointer}

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

/* ── Responsive: hidden/block ── */
@media(max-width:767px){
  .md\:hidden{display:none!important}
  .sm\:block{display:block}.sm\:flex{display:flex}.sm\:inline{display:inline}
}
@media(min-width:768px){
  .md\:flex{display:flex}.md\:block{display:block}
  .hidden.md\:flex{display:flex}.hidden.md\:block{display:block}
}
@media(min-width:1024px){
  .lg\:block{display:block}.hidden.lg\:block{display:block}
}

/* ── no-scrollbar ── */
.no-scrollbar::-webkit-scrollbar{display:none}
.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}
