
/* Minimal Tailwind-like CSS subset (expanded) for Space Weather Dashboard */

/* Reset-ish */
*,*::before,*::after{box-sizing:border-box}
html{line-height:1.5;-webkit-text-size-adjust:100%}
body{margin:0}
img,svg{display:block;max-width:100%}

/* Visibility */
.hidden{display:none}

/* 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-\[1\.1rem\]{font-size:1.1rem}
.text-\[13px\]{font-size:13px}
.text-\[15px\]{font-size:15px}
.leading-relaxed{line-height:1.625}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.whitespace-nowrap{white-space:nowrap}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.text-center{text-align:center}

/* Display & layout */
.block{display:block}
.inline-block{display:inline-block}
.inline-flex{display:inline-flex}
.flex{display:flex}
.grid{display:grid}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}

/* Positioning */
.relative{position:relative}
.absolute{position:absolute}
.fixed{position:fixed}
.inset-0{top:0;right:0;bottom:0;left:0}
.top-3{top:.75rem}
.right-3{right:.75rem}
.bottom-2{bottom:.5rem}
.right-4{right:1rem}
.z-40{z-index:40}
.z-50{z-index:50}

/* Spacing (margin) */
.mt-20{margin-top:5rem}
.mt-2{margin-top:.5rem}
.mt-3{margin-top:.75rem}
.mt-4{margin-top:1rem}
.mt-8{margin-top:2rem}
.mt-10{margin-top:2.5rem}
.mb-2{margin-bottom:.5rem}
.mb-4{margin-bottom:1rem}
.mb-5{margin-bottom:1.25rem}
.mb-6{margin-bottom:1.5rem}
.mr-1{margin-right:.25rem}

/* Space between children */
.space-y-1 > * + *{margin-top:.25rem}

/* Spacing (padding) */
.p-2{padding:.5rem}
.p-3{padding:.75rem}
.p-4{padding:1rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.px-2{padding-left:.5rem;padding-right:.5rem}
.py-1{padding-top:.25rem;padding-bottom:.25rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.pt-4{padding-top:1rem}
.pb-5{padding-bottom:1.25rem}
.pl-5{padding-left:1.25rem}

/* Gap */
.gap-1{gap:.25rem}
.gap-2{gap:.5rem}
.gap-3{gap:.75rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}

/* Sizing */
.h-5{height:1.25rem}
.w-5{width:1.25rem}
.h-10{height:2.5rem}
.w-10{width:2.5rem}
.h-3{height:.75rem}
.w-3{width:.75rem}
.w-auto{width:auto}
.min-w-0{min-width:0}
.w-\[min\(100\%-2rem\,960px\)\]{width:min(100% - 2rem,960px)}

/* Lists */
.list-disc{list-style-type:disc}

/* Rounded */
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.rounded-2xl{border-radius:1rem}
.rounded-full{border-radius:9999px}

/* Borders */
.border{border-width:1px}
.border-slate-200{border-color:rgb(226 232 240)}
.border-slate-200\/70{border-color:rgba(226,232,240,.70)}
.border-slate-300{border-color:rgb(203 213 225)}
.border-sky-100{border-color:rgb(224 242 254)}
.border-sky-200{border-color:rgb(186 230 253)}
.border-sky-200\/70{border-color:rgba(186,230,253,.70)}
.border-sky-300{border-color:rgb(125 211 252)}
.border-yellow-200{border-color:rgb(254 240 138)}
.border-orange-200{border-color:rgb(254 215 170)}
.border-red-200{border-color:rgb(254 202 202)}
.border-emerald-200{border-color:rgb(187 247 208)}
.border-violet-100{border-color:rgb(237 233 254)}

/* Backgrounds */
.bg-white{background-color:#fff}
.bg-white\/85{background-color:rgba(255,255,255,.85)}
.bg-white\/90{background-color:rgba(255,255,255,.90)}
.bg-slate-50{background-color:rgb(248 250 252)}
.bg-slate-900\/20{background-color:rgba(15,23,42,.20)}
.bg-sky-50{background-color:rgb(240 249 255)}
.bg-sky-50\/60{background-color:rgba(240,249,255,.6)}
.bg-yellow-50{background-color:rgb(254 252 232)}
.bg-orange-100{background-color:rgb(255 237 213)}
.bg-red-50{background-color:rgb(254 242 242)}
.bg-red-100{background-color:rgb(254 226 226)}
.bg-emerald-50{background-color:rgb(236 253 245)}
.bg-violet-50{background-color:rgb(245 243 255)}

/* Text colors */
.text-slate-500{color:rgb(100 116 139)}
.text-slate-600{color:rgb(71 85 105)}
.text-slate-700{color:rgb(51 65 85)}
.text-slate-800{color:rgb(30 41 59)}
.text-slate-900{color:rgb(15 23 42)}
.text-sky-700{color:rgb(3 105 161)}
.text-sky-800{color:rgb(7 89 133)}
.text-emerald-700{color:rgb(4 120 87)}
.text-yellow-700{color:rgb(161 98 7)}
.text-red-700{color:rgb(185 28 28)}
.text-violet-700{color:rgb(109 40 217)}

/* Gradient */
.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-from,rgba(255,255,255,0)),var(--tw-gradient-via,rgba(255,255,255,0)),var(--tw-gradient-to,rgba(255,255,255,0)))}
.from-white\/85{--tw-gradient-from:rgba(255,255,255,.85)}
.via-white\/70{--tw-gradient-via:rgba(255,255,255,.70)}
.to-white\/10{--tw-gradient-to:rgba(255,255,255,.10)}

/* Shadows */
.shadow-sm{box-shadow:0 1px 2px rgba(0,0,0,.06)}
.shadow-md{box-shadow:0 4px 6px rgba(0,0,0,.10)}
.shadow-lg{box-shadow:0 10px 15px rgba(0,0,0,.15)}
.shadow-2xl{box-shadow:0 25px 50px rgba(0,0,0,.25)}
.hover\:shadow-md:hover{box-shadow:0 4px 6px rgba(0,0,0,.10)}
.hover\:shadow-lg:hover{box-shadow:0 10px 15px rgba(0,0,0,.15)}

/* Ring (approx) */
.ring-1{box-shadow:0 0 0 1px rgba(0,0,0,.05) inset}
.ring-slate-200\/70{box-shadow:0 0 0 1px rgba(226,232,240,.70) inset}

/* Cursor & select */
.cursor-pointer{cursor:pointer}
.select-none{user-select:none}

/* Transitions */
.transition{transition:all .15s ease}
.hover\:border-sky-300:hover{border-color:rgb(125 211 252)}

/* Backdrop blur */
.backdrop-blur-sm{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}

/* Underline */
.underline{text-decoration:underline}

/* Chart area */
.chartbox{height:280px}
.chartbox>canvas{width:100%!important;height:100%!important}

/* Responsive rules */
@media (min-width:640px){
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:h-12{height:3rem}
  .sm\:p-8{padding:2rem}
  .sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}
}
@media (min-width:1024px){
  .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}
}

/* Accessibility helper */
[aria-hidden="true"]{pointer-events:none}
