/* Websitenazorg Testsuite – styling for the custom run view (Filament ships only its own classes). */
.fbts-stack > * + * { margin-top: 1.5rem; }
.fbts-row { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; }
.fbts-muted { font-size: .875rem; color: rgb(107 114 128); }
.fbts-small { font-size: .75rem; color: rgb(107 114 128); }
.fbts-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin-top: 1rem; }
.fbts-tile { border: 1px solid rgb(229 231 235); border-radius: .6rem; padding: .7rem .9rem; }
.fbts-tile b { display: block; font-size: 1.5rem; font-weight: 600; line-height: 1.2; }
.fbts-tile span { font-size: .75rem; color: rgb(107 114 128); }
.fbts-success { color: #15803d; } .fbts-warning { color: #b45309; } .fbts-danger { color: #b91c1c; }
.fbts-alert { border-radius: .6rem; padding: .7rem .9rem; font-size: .875rem; margin: .75rem 0; }
.fbts-alert-danger { background: #fef2f2; color: #991b1b; }
.fbts-alert-info { background: #eff6ff; color: #1e3a8a; }
.fbts-table { width: 100%; font-size: .875rem; border-collapse: collapse; }
.fbts-table td { padding: .3rem .5rem .3rem 0; border-bottom: 1px solid rgb(243 244 246); vertical-align: top; }
.fbts-table td.fbts-num { text-align: right; color: rgb(156 163 175); width: 4rem; }
.fbts-table tr.is-failed td { color: #b91c1c; font-weight: 600; }
.fbts-table tr.is-info td { color: rgb(107 114 128); }
.fbts-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-top: .6rem; }
.fbts-grid4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin-top: 1rem; }
.fbts-img { display: block; width: 100%; border: 1px solid rgb(229 231 235); border-radius: .35rem; object-fit: cover; object-position: top; background: #f8fafc; }
.fbts-img.tall { max-height: 24rem; } .fbts-img.thumb { height: 10rem; }
.fbts-cap { margin-top: .25rem; font-size: .75rem; color: rgb(107 114 128); }
.fbts-two { display: grid; gap: 1.5rem; }
.fbts-head { display: flex; align-items: center; justify-content: space-between; margin-top: 1rem; font-weight: 500; font-size: .875rem; }
.fbts-log { max-height: 24rem; overflow: auto; white-space: pre-wrap; font-size: .75rem; color: rgb(75 85 99); font-family: ui-monospace, monospace; }
.fbts-card { border: 1px solid rgb(229 231 235); border-radius: .6rem; padding: .75rem; font-size: .875rem; }
.fbts-card + .fbts-card { margin-top: .75rem; }
.fbts-card p { margin-top: .5rem; }
.fbts-link { color: rgb(37 99 235); text-decoration: underline; }
@media (min-width: 1024px) { .fbts-two { grid-template-columns: 1fr 1fr; } }
@media (max-width: 700px) { .fbts-tiles, .fbts-grid4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .fbts-grid3 { grid-template-columns: 1fr; } }
.dark .fbts-tile, .dark .fbts-img, .dark .fbts-card { border-color: rgba(255,255,255,.1); }
.dark .fbts-table td { border-color: rgba(255,255,255,.06); }
.dark .fbts-alert-danger { background: rgba(239,68,68,.12); color: #fca5a5; }
.dark .fbts-alert-info { background: rgba(59,130,246,.12); color: #bfdbfe; }
.dark .fbts-log { color: rgb(209 213 219); }
.dark .fbts-success { color: #4ade80; } .dark .fbts-warning { color: #fbbf24; } .dark .fbts-danger { color: #f87171; }
