/* =====================================================================
   USL polish: site-wide fixes, loaded after style.css.
   1. Buttons    one look, colour = meaning (same as the draft pages)
   2. Stat cards stat rows fill the width of their hero
   3. Tables     fit on a phone instead of scrolling sideways
   Opt a button out with the class usl-raw. Opt a table out of the scroll
   wrapper with data-usl="raw".
   ===================================================================== */

/* ---------- 1. BUTTONS ---------- */
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"])){background:rgba(91,163,217,.10) !important;border:1px solid rgba(91,163,217,.35) !important;color:var(--color-accent,#5BA3D9) !important;
  border-radius:6px !important;font-family:inherit;font-weight:700;font-size:.78rem;line-height:1.2;padding:9px 16px;box-sizing:border-box;
  text-align:center;text-decoration:none !important;cursor:pointer;box-shadow:none;transition:background .15s,border-color .15s,color .15s}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"])):hover{background:rgba(91,163,217,.18) !important;border-color:rgba(91,163,217,.55) !important;color:#fff !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"])):focus-visible{outline:2px solid var(--color-accent,#5BA3D9);outline-offset:2px}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="primary"],
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="accent"],
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="save"]{background:rgba(91,163,217,.20) !important;border-color:rgba(91,163,217,.6) !important;color:#fff !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="primary"]:hover,
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="accent"]:hover,
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="save"]:hover{background:rgba(91,163,217,.30) !important;border-color:rgba(91,163,217,.8) !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="success"],
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="approve"]{background:rgba(102,187,106,.12) !important;border-color:rgba(102,187,106,.45) !important;color:#66BB6A !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="success"]:hover,
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="approve"]:hover{background:rgba(102,187,106,.22) !important;border-color:rgba(102,187,106,.7) !important;color:#fff !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="warn"]{background:rgba(255,167,38,.12) !important;border-color:rgba(255,167,38,.45) !important;color:#FFB74D !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="warn"]:hover{background:rgba(255,167,38,.22) !important;border-color:rgba(255,167,38,.7) !important;color:#fff !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="danger"],
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="delete"],
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="remove"],
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="reject"],
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="decline"]{background:rgba(239,83,80,.10) !important;border-color:rgba(239,83,80,.4) !important;color:#EF5350 !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="danger"]:hover,
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="delete"]:hover,
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="remove"]:hover,
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="reject"]:hover,
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="decline"]:hover{background:rgba(239,83,80,.18) !important;border-color:rgba(239,83,80,.6) !important;color:#EF5350 !important}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="small"],
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"]))[class*="sm"]{padding:6px 11px;font-size:.74rem}
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"])):disabled{opacity:.45;cursor:not-allowed}
.usl-ic{width:14px;height:14px;margin-right:6px;vertical-align:-2px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:640px){
main :is(a,button,input[type="submit"],input[type="button"])[class*="btn"]:where(:not([class*="seg"]):not([class*="dbt"]):not([class*="dla-"]):not([class*="dr-btn"]):not([class*="tab"]):not([class*="hdr-"]):not([class*="toggle"]):not([class*="usl-raw"]):not([class*="news-btn"])){flex:1 1 auto;padding-top:12px;padding-bottom:12px}
}

/* ---------- 2. STAT CARDS ---------- */
main .hm-stats,main .hero-stats{flex:1 1 auto}
main .hm-stats > *,main .hero-stats > *{flex:1 1 0;min-width:68px}
@media(max-width:640px){main .hm-stats,main .hero-stats{flex:1 1 100%;width:100%}main .hm-stats > *,main .hero-stats > *{min-width:0}}

/* ---------- 3. TABLES ---------- */
/* style.css puts every cell on one line below 768px, which is what pushed tables off the screen. Let text wrap and tighten the padding. */
@media(max-width:768px){
  main table{font-size:.8rem}
  main th,main td{padding:8px 7px;white-space:normal}
  main th{font-size:.66rem;letter-spacing:.4px}
  /* seven or more columns will not fit however much text wraps: keep each row on one line and scroll inside the box */
  main .usl-wide th,main .usl-wide td{white-space:nowrap}
}
/* tables the script wraps: a contained sideways scroll with a soft edge showing there is more */
main .usl-tscroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
  background:linear-gradient(90deg,var(--color-bg-secondary,#121a24) 30%,rgba(18,26,36,0)) left center/24px 100% no-repeat local,
             linear-gradient(270deg,var(--color-bg-secondary,#121a24) 30%,rgba(18,26,36,0)) right center/24px 100% no-repeat local,
             radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.45),rgba(0,0,0,0)) left center/10px 100% no-repeat scroll,
             radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.45),rgba(0,0,0,0)) right center/10px 100% no-repeat scroll}
