/* Spec Table Builder – front end. All look & feel comes from the --stb-* variables printed per table. */
.stb-wrap{width:var(--stb-max-w,100%);max-width:100%;margin:0 0 1.5em;font-family:var(--stb-font,inherit);font-size:var(--stb-fs,15px);line-height:var(--stb-lh,1.45);color:var(--stb-val-c,inherit);box-sizing:border-box}
.stb-wrap.stb-align-center{margin-left:auto;margin-right:auto}
.stb-wrap.stb-align-right{margin-left:auto}
.stb-wrap *,.stb-wrap *::before,.stb-wrap *::after{box-sizing:border-box}

.stb-wrap .stb-card{background:var(--stb-bg,#fff);border:var(--stb-border-w,1px) solid var(--stb-border,#e3e8f2);border-radius:var(--stb-radius,20px);box-shadow:var(--stb-shadow,none);overflow:hidden}
.stb-wrap .stb-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}

.stb-wrap .stb-table{width:100%;margin:0;border:0;border-collapse:collapse;table-layout:fixed;background:transparent;font:inherit;color:inherit}
.stb-wrap .stb-table caption{caption-side:top;text-align:left;padding:var(--stb-pad-y) var(--stb-pad-x);font-size:var(--stb-cap-fs,18px);font-weight:700;color:var(--stb-cap-c,inherit)}
.stb-wrap .stb-table th,
.stb-wrap .stb-table td{padding:var(--stb-pad-y) var(--stb-pad-x);border:0;background:transparent;text-align:left;vertical-align:middle;font:inherit;line-height:inherit;overflow-wrap:break-word;box-shadow:none;text-transform:none;letter-spacing:normal}

.stb-wrap .stb-table tbody tr{background:var(--stb-bg)}
.stb-wrap .stb-table tbody th{background:var(--stb-label-bg);color:var(--stb-label-c);font-weight:var(--stb-label-wt)}
.stb-wrap .stb-table tbody td{color:var(--stb-val-c);font-weight:var(--stb-val-wt);text-align:var(--stb-val-align)}
.stb-wrap .stb-table thead th{background:var(--stb-head-bg);color:var(--stb-head-c);font-weight:700;text-align:var(--stb-val-align)}
.stb-wrap .stb-table thead th:first-child{text-align:left}

.stb-wrap .stb-table thead th{border-bottom:var(--stb-div-w) solid var(--stb-div-c)}
.stb-wrap .stb-table tbody tr + tr > *{border-top:var(--stb-div-w) solid var(--stb-div-c)}
.stb-wrap .stb-table th + th,
.stb-wrap .stb-table th + td,
.stb-wrap .stb-table td + td{border-left:var(--stb-vdiv-w) solid var(--stb-div-c)}

.stb-wrap.stb-zebra .stb-table tbody tr:nth-child(even){background:var(--stb-alt)}
.stb-wrap.stb-hover .stb-table tbody tr:hover{background:var(--stb-hover)}

.stb-wrap .stb-table a{color:inherit;text-decoration:underline}
.stb-empty{padding:12px 16px;border:1px dashed #c3c4c7;border-radius:6px;color:#50575e}
