/* Tailwind-inspired utility set for the TableDB console */
*,::before,::after{box-sizing:border-box;}
html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background-color:#020617;color:#e2e8f0;}
body{margin:0;min-height:100vh;background-color:#020617;color:#e2e8f0;}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer;}
:root{color-scheme:dark;}
/* Layout */
.flex{display:flex;}
.inline-flex{display:inline-flex;}
.grid{display:grid;}
.hidden{display:none;}
.flex-col{flex-direction:column;}
.justify-between{justify-content:space-between;}
.justify-end{justify-content:flex-end;}
.justify-center{justify-content:center;}
.items-center{align-items:center;}
.items-end{align-items:flex-end;}
/* Sizing */
.h-full{height:100%;}
.h-10{height:2.5rem;}
.h-2{height:.5rem;}
.min-h-screen{min-height:100vh;}
.min-h-\[calc\(100vh-64px\)\]{min-height:calc(100vh - 64px);}
.max-h-64{max-height:16rem;}
.w-full{width:100%;}
.min-w-full{min-width:100%;}
.w-10{width:2.5rem;}
.w-2{width:.5rem;}
.w-80{width:20rem;}
.max-w-md{max-width:28rem;}
.max-w-2xl{max-width:42rem;}
/* Spacing */
.mt-1{margin-top:.25rem;}
.mt-2{margin-top:.5rem;}
.mt-3{margin-top:.75rem;}
.mt-5{margin-top:1.25rem;}
.mt-6{margin-top:1.5rem;}
.mr-2{margin-right:.5rem;}
.mb-6{margin-bottom:1.5rem;}
.p-6{padding:1.5rem;}
.p-10{padding:2.5rem;}
.pt-6{padding-top:1.5rem;}
.pr-1{padding-right:.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-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-8{padding-top:2rem;padding-bottom:2rem;}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem;}
.py-12{padding-top:3rem;padding-bottom:3rem;}
.px-2{padding-left:.5rem;padding-right:.5rem;}
.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;}
.px-6{padding-left:1.5rem;padding-right:1.5rem;}
.px-8{padding-left:2rem;padding-right:2rem;}
.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-6> :not([hidden])~:not([hidden]){margin-top:1.5rem;}
.space-y-8> :not([hidden])~:not([hidden]){margin-top:2rem;}
.space-y-10> :not([hidden])~:not([hidden]){margin-top:2.5rem;}
.gap-2{gap:.5rem;}
.gap-3{gap:.75rem;}
.gap-4{gap:1rem;}
.gap-6{gap:1.5rem;}
.gap-8{gap:2rem;}
.gap-10{gap:2.5rem;}
.gap-12{gap:3rem;}
/* 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-2xl{font-size:1.5rem;line-height:2rem;}
.text-3xl{font-size:1.875rem;line-height:2.25rem;}
.text-center{text-align:center;}
.text-left{text-align:left;}
.text-right{text-align:right;}
.font-medium{font-weight:500;}
.font-semibold{font-weight:600;}
.font-bold{font-weight:700;}
.uppercase{text-transform:uppercase;letter-spacing:.12em;}
.tracking-wide{letter-spacing:.1em;}
.tracking-\[0\.35em\]{letter-spacing:.35em;}
.leading-none{line-height:1;}
.text-white{color:#fff;}
.text-slate-100{color:#f1f5f9;}
.text-slate-200{color:#e2e8f0;}
.text-slate-300{color:#cbd5f5;}
.text-slate-400{color:#94a3b8;}
.text-slate-500{color:#64748b;}
.text-slate-600{color:#475569;}
.text-slate-900{color:#0f172a;}
.text-emerald-200{color:#a7f3d0;}
.text-emerald-300{color:#6ee7b7;}
.text-emerald-400{color:#34d399;}
.text-emerald-950{color:#022c22;}
.text-red-200{color:#fecaca;}
/* Backgrounds */
.bg-slate-950{background-color:#020617;}
.bg-slate-950\/40{background-color:rgba(2,6,23,.4);}
.bg-slate-950\/60{background-color:rgba(2,6,23,.6);}
.bg-slate-950\/70{background-color:rgba(2,6,23,.7);}
.bg-slate-950\/80{background-color:rgba(2,6,23,.8);}
.bg-slate-950\/90{background-color:rgba(2,6,23,.9);}
.bg-slate-950\/95{background-color:rgba(2,6,23,.95);}
.bg-slate-900\/50{background-color:rgba(15,23,42,.5);}
.bg-slate-900\/60{background-color:rgba(15,23,42,.6);}
.bg-slate-900\/70{background-color:rgba(15,23,42,.7);}
.bg-emerald-500{background-color:#22c55e;}
.bg-emerald-900{background-color:#064e3b;}
.bg-emerald-500\/5{background-color:rgba(34,197,94,.05);}
.bg-red-900\/30{background-color:rgba(127,29,29,.3);}
.bg-emerald-500\/10{background-color:rgba(34,197,94,.1);}
.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));}
.from-emerald-500{--tw-gradient-from:#22c55e;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,rgba(34,197,94,0));}
.to-emerald-700{--tw-gradient-to:#047857;}
/* Borders */
.border{border-width:1px;border-style:solid;}
.border-t{border-top-width:1px;border-style:solid;}
.border-b{border-bottom-width:1px;border-style:solid;}
.border-r{border-right-width:1px;border-style:solid;}
.border-dashed{border-style:dashed;}
.border-slate-800{border-color:#1e293b;}
.border-slate-900{border-color:#111827;}
.border-slate-700{border-color:#334155;}
.border-transparent{border-color:transparent;}
.border-emerald-500\/20{border-color:rgba(34,197,94,.2);}
.border-emerald-500\/40{border-color:rgba(34,197,94,.4);}
.border-red-700{border-color:#b91c1c;}
.divide-y> :not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-style:solid;}
.divide-slate-800> :not([hidden])~:not([hidden]){border-color:#1e293b;}
.rounded-lg{border-radius:.75rem;}
.rounded-xl{border-radius:.875rem;}
.rounded-2xl{border-radius:1rem;}
.rounded-3xl{border-radius:1.5rem;}
.rounded-full{border-radius:9999px;}
/* Effects */
.shadow{box-shadow:0 15px 30px rgba(15,23,42,.25);}
.shadow-xl{box-shadow:0 25px 50px rgba(15,23,42,.35);}
.shadow-2xl{box-shadow:0 40px 80px rgba(15,23,42,.45);}
.shadow-emerald-500\/10{box-shadow:0 20px 40px rgba(34,197,94,.1);}
.shadow-emerald-500\/20{box-shadow:0 20px 40px rgba(34,197,94,.2);}
.backdrop-blur{backdrop-filter:blur(18px);}
.backdrop-blur-sm{backdrop-filter:blur(8px);}
.transition{transition:all .2s ease-in-out;}
.transition-transform{transition-property:transform;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);}
.duration-300{transition-duration:.3s;}
.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1);}
.transform{transform:translateZ(0);}
.translate-x-0{transform:translateX(0);}
.-translate-x-full{transform:translateX(-100%);}
.z-30{z-index:30;}
.z-40{z-index:40;}
.z-50{z-index:50;}
.fixed{position:fixed;}
.sticky{position:sticky;}
.top-0{top:0;}
.inset-0{top:0;right:0;bottom:0;left:0;}
.inset-y-0{top:0;bottom:0;}
.left-0{left:0;}
.overflow-hidden{overflow:hidden;}
.overflow-y-auto{overflow-y:auto;}
.whitespace-pre-wrap{white-space:pre-wrap;}
.break-words{overflow-wrap:break-word;}
/* States */
button:focus,input:focus,select:focus,textarea:focus{outline:2px solid rgba(34,197,94,.4);outline-offset:2px;}
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px;}
.focus\:border-emerald-500:focus{border-color:#22c55e;}
.focus\:ring-2:focus{box-shadow:0 0 0 2px rgba(34,197,94,.4);}
.focus\:ring-emerald-500\/40:focus{box-shadow:0 0 0 4px rgba(34,197,94,.4);}
.focus\:ring-red-500\/40:focus{box-shadow:0 0 0 4px rgba(248,113,113,.4);}
.disabled\:cursor-not-allowed:disabled{cursor:not-allowed;}
.disabled\:opacity-50:disabled{opacity:.5;}
.disabled\:opacity-60:disabled{opacity:.6;}
.hover\:bg-emerald-400:hover{background-color:#34d399;}
.hover\:bg-emerald-500\/10:hover{background-color:rgba(34,197,94,.1);}
.hover\:bg-red-900\/30:hover{background-color:rgba(127,29,29,.3);}
.hover\:bg-slate-900\/60:hover{background-color:rgba(15,23,42,.6);}
.hover\:bg-slate-900\/70:hover{background-color:rgba(15,23,42,.7);}
.hover\:border-emerald-500:hover{border-color:#22c55e;}
.hover\:border-slate-800:hover{border-color:#1e293b;}
.hover\:text-emerald-200:hover{color:#a7f3d0;}
.hover\:text-emerald-300:hover{color:#6ee7b7;}
.hover\:text-white:hover{color:#fff;}
.cursor-pointer{cursor:pointer;}
.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px;}
.focus-visible\:ring-2:focus-visible{box-shadow:0 0 0 2px rgba(34,197,94,.4);}
.focus-visible\:ring-emerald-500:focus-visible{box-shadow:0 0 0 2px rgba(34,197,94,.7);}
/* Animation */
.animate-ping{position:relative;}
.animate-ping::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;background:currentColor;opacity:.4;animation:ping 1.5s cubic-bezier(0,0,.2,1) infinite;}
@keyframes ping{75%,100%{transform:scale(2);opacity:0;}}
.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.5;}}
/* Grids */
.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));}
/* Responsive */
@media (min-width:768px){
  .md\:flex{display:flex;}
  .md\:hidden{display:none;}
  .md\:flex-row{flex-direction:row;}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
  .md\:col-span-2{grid-column:span 2/span 2;}
  .md\:items-center{align-items:center;}
  .md\:items-end{align-items:flex-end;}
  .md\:justify-between{justify-content:space-between;}
  .md\:ml-80{margin-left:20rem;}
  .md\:static{position:static;}
  .md\:translate-x-0{transform:translateX(0);}
}
@media (min-width:1024px){
  .lg\:flex-row{flex-direction:row;}
  .lg\:items-center{align-items:center;}
  .lg\:justify-between{justify-content:space-between;}
  .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width:1280px){
  .xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}
  .xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}
}
