.ssw{
  padding: 10px 4px;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
}

.ssw-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  margin-bottom: 14px;
}

.ssw-title{
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.ssw-subtitle{
  margin-top: 4px;
  font-size: 13px;
  color: #6b7280;
  font-weight: bolder !important;
}

.ssw-filters{
  min-width: 320px;
}

/* Grid */
.ssw-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap:14px;
}
@media (min-width: 768px){
  .ssw-grid{ grid-template-columns: repeat(4, 1fr); }
}

/* Card */
.ssw-card{
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, 0.10);
  border-radius: 18px;
  padding: 16px 16px 14px 16px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
  overflow:hidden;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.ssw-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.10);
  border-color: rgba(15, 23, 42, 0.14);
}

/* Thin gradient bar */
.ssw-card-topbar{
  position:absolute;
  left:0; top:0;
  height: 6px;
  width:100%;
  opacity: .95;
}

/* Head */
.ssw-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  margin-top: 4px;
}

.ssw-label{
  font-size: 13px;
  color: #64748b;
  font-weight: 600;
}

.ssw-icon{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(15, 23, 42, 0.04);
  border: 1px solid rgba(15, 23, 42, 0.06);
}

.ssw-icon-svg{
  width: 18px;
  height: 18px;
  color: rgba(15, 23, 42, 0.55);
}

/* Amount */
.ssw-amount{
  margin-top: 10px;
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #0f172a;
}

/* Meta row */
.ssw-meta{
  margin-top: 10px;
  font-size: 12px;
  color: #64748b;
  display:flex;
  align-items:center;
  gap: 8px;
}

.ssw-prev{
  color:#0f172a;
  font-weight: 700;
}

/* Chips */
.ssw-chip{
  display:inline-flex;
  align-items:center;
  padding: 3px 8px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 11px;
  border: 1px solid transparent;
}

.ssw-chip.is-neutral{
  background: rgba(100,116,139,0.10);
  border-color: rgba(100,116,139,0.16);
  color:#475569;
}
.ssw-chip.is-good{
  background: rgba(16,185,129,0.12);
  border-color: rgba(16,185,129,0.22);
  color:#047857;
}
.ssw-chip.is-bad{
  background: rgba(244,63,94,0.12);
  border-color: rgba(244,63,94,0.22);
  color:#be123c;
}
.ssw-chip.is-warn{
  background: rgba(245,158,11,0.14);
  border-color: rgba(245,158,11,0.24);
  color:#b45309;
}

/* Net text color helpers */
.ssw-amount.is-good{ color:#047857; }
.ssw-amount.is-bad{ color:#be123c; }

.ssw-footnote{
  margin-top: 10px;
  font-size: 12px;
  color:#64748b;
}

/* =========================
   Card themes (topbar + icon tint)
   ========================= */
.ssw-card--purchase .ssw-card-topbar{
  background: linear-gradient(90deg, #f59e0b, #f97316);
}
.ssw-card--sales .ssw-card-topbar{
  background: linear-gradient(90deg, #22c55e, #06b6d4);
}
.ssw-card--net .ssw-card-topbar{
  background: linear-gradient(90deg, #6366f1, #a855f7);
}

/* =========================
   Make Filament form inputs look "pro"
   (works on Filament forms inside widget)
   ========================= */
.ssw :is(input, select){
  border-radius: 12px !important;
}
.ssw :is(input, select):focus{
  outline: none !important;
  box-shadow: 0 0 0 4px rgba(99,102,241,0.16) !important;
}

/* =========================
   Dark mode support
   ========================= */
html.dark .ssw-subtitle{ color:#94a3b8; }

html.dark .ssw-card{
  background: #0b1220;
  border-color: rgba(148,163,184,0.14);
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
}

html.dark .ssw-label{ color:#94a3b8; }
html.dark .ssw-amount{ color:#e2e8f0; }
html.dark .ssw-prev{ color:#e2e8f0; }

html.dark .ssw-icon{
  background: rgba(148,163,184,0.10);
  border-color: rgba(148,163,184,0.16);
}

html.dark .ssw-icon-svg{ color: rgba(226,232,240,0.72); }

html.dark .ssw-footnote,
html.dark .ssw-meta{
  color:#94a3b8;
}

html.dark .ssw-amount.is-good{ color:#34d399; }
html.dark .ssw-amount.is-bad{ color:#fb7185; }
.ssw-card--turnover .ssw-card-topbar {
    background: linear-gradient(90deg, #ff007f, #6a00ff, #00d2ff);
}
main.fi-main .companySwitcher{display:none;}