@font-face{font-family:'Barlow Condensed';font-weight:600;font-style:normal;font-display:swap;src:url(/static/fonts/barlow-condensed-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-weight:700;font-style:normal;font-display:swap;src:url(/static/fonts/barlow-condensed-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-weight:400;font-style:normal;font-display:swap;src:url(/static/fonts/barlow-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-weight:400;font-style:italic;font-display:swap;src:url(/static/fonts/barlow-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-weight:500;font-style:normal;font-display:swap;src:url(/static/fonts/barlow-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-weight:600;font-style:normal;font-display:swap;src:url(/static/fonts/barlow-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Source Serif 4';font-weight:400;font-style:normal;font-display:swap;src:url(/static/fonts/source-serif-4-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Source Serif 4';font-weight:600;font-style:normal;font-display:swap;src:url(/static/fonts/source-serif-4-latin-600-normal.woff2) format('woff2')}

:root{
  --red:#D70A1E; --red-deep:#A5000F; --ink:#161A23; --ink-2:#3B4250; --muted:#677080;
  --paper:#FFFFFF; --wash:#F3F5F8; --rule:#DDE2E9; --amber:#F2A900; --amber-wash:#FFF6DC;
  --ok:#1E7F4F; --serif:"Source Serif 4", Georgia, serif;
  --sans:"Barlow", "Helvetica Neue", Arial, sans-serif; --cond:"Barlow Condensed", "Arial Narrow", sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--sans)}
a{color:var(--ink);text-decoration-color:rgba(22,26,35,.35);text-underline-offset:2px}
a:hover{text-decoration-color:var(--red)}
:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
button,input,select{font:inherit;color:inherit}

/* masthead: the red top carries the bot's pulse */
.mast{background:var(--red);color:#fff;padding:10px 20px 8px;display:grid;
  grid-template-columns:auto 1fr auto;grid-template-areas:"brand nav look" "pulse pulse pulse";gap:6px 26px;align-items:center}
.brand{grid-area:brand}.mainnav{grid-area:nav}.pulse{grid-area:pulse}.lookup{grid-area:look}
.brand{font:700 30px/1 var(--cond);color:#fff;text-decoration:none;letter-spacing:.2px}
.pulse{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px}
.pulse span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.dot{width:9px;height:9px;border-radius:50%;background:#fff;flex:none}
.dot.bad{background:var(--amber);box-shadow:0 0 0 2px rgba(255,255,255,.6)}
.dot.off{background:transparent;border:2px solid rgba(255,255,255,.7)}
.lookup{display:flex;gap:6px}
.lookup input[type=search]{width:260px;padding:8px 10px;border:0;border-radius:4px;background:#fff}
.lookup select{padding:8px 6px;border:0;border-radius:4px;background:var(--red-deep);color:#fff}
.lookup button{padding:8px 14px;border:0;border-radius:4px;background:var(--ink);color:#fff;font-weight:600;cursor:pointer}
.problems{background:var(--amber-wash);border-bottom:2px solid var(--amber);padding:10px 20px;font-size:15px}
.problems p{margin:2px 0}

main{max-width:1320px;margin:0 auto;padding:18px 20px 60px}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px}

/* filters */
.tabs{display:flex;flex-wrap:wrap;gap:2px 18px;border-bottom:2px solid var(--ink);margin-bottom:10px}
.tabs a{text-decoration:none;padding:8px 0 6px;font-weight:600;color:var(--muted);border-bottom:4px solid transparent;margin-bottom:-2px}
.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--red)}
.tools{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin:12px 0 4px;font-size:15px}
.tools input[type=search]{padding:6px 9px;border:1px solid var(--rule);border-radius:4px;width:220px}
.tools select{padding:6px;border:1px solid var(--rule);border-radius:4px;background:#fff}
.tools .count{margin-left:auto;color:var(--muted)}
.btn{display:inline-block;padding:6px 12px;border:1px solid var(--ink);border-radius:4px;background:#fff;
  text-decoration:none;font-weight:600;font-size:14px;cursor:pointer;line-height:1.3}
.btn.primary{background:var(--red);border-color:var(--red);color:#fff}
.btn.dark{background:var(--ink);color:#fff}
.btn.quiet{border-color:var(--rule);color:var(--ink-2);font-weight:500}
form.inline{display:inline}
.newbar{display:none;margin:10px 0;padding:10px 14px;background:var(--ink);color:#fff;border-radius:4px;cursor:pointer;border:0;width:100%;text-align:left;font-weight:600}
.newbar.show{display:block}

/* the lead: a splash-style name with its score flag */
.lead{display:grid;grid-template-columns:56px minmax(0,1fr);gap:0 16px;padding:18px 0;border-bottom:1px solid var(--rule)}
.lead:target{background:var(--wash)}
.flag{width:56px;height:56px;display:grid;place-items:center;border-radius:4px;font:700 26px/1 var(--cond);
  color:var(--muted);border:2px solid var(--rule)}
.flag.hot{background:var(--red);border-color:var(--red);color:#fff}
.flag.warm{border-color:var(--red);color:var(--red)}
.lead.exit .flag{box-shadow:0 0 0 3px var(--amber)}
.who{font:700 30px/1.02 var(--cond);margin:0;letter-spacing:.1px}
.who a{text-decoration:none}
.lead.read .who{font-weight:600;color:var(--ink-2)}
.what{margin:3px 0 0;color:var(--ink-2);font-size:15px}
.what b{color:var(--ink)}
.when{color:var(--muted);font-size:14px}
.unreadmark{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--red);margin-left:8px;vertical-align:5px}
.angles{margin:10px 0 0;padding:0;list-style:none}
.angles li{padding:3px 0 3px 14px;position:relative;font-size:15.5px;max-width:76ch}
.angles li::before{content:"";position:absolute;left:0;top:12px;width:6px;height:6px;background:var(--ink-2);border-radius:1px}
.angles li.exitline{background:var(--amber-wash);padding:6px 10px 6px 14px;border-left:4px solid var(--amber);margin:4px 0}
.angles li.exitline::before{display:none}
.angles li.big{font-weight:600}
details.more{margin-top:8px}
details.more summary{cursor:pointer;color:var(--ink-2);font-weight:600;font-size:14.5px}
.notes{margin:10px 0 0;padding:0;list-style:none}
.notes li{font:400 15.5px/1.55 var(--serif);padding:8px 0 8px 14px;border-left:3px solid var(--rule);margin:6px 0;max-width:74ch}
.notes .tag{display:block;font:600 13.5px/1.3 var(--sans);color:var(--ink-2);margin-bottom:2px}
.notes .amt{font-weight:600;background:#FDECEE;padding:0 3px;border-radius:2px}
table.figs{border-collapse:collapse;margin:12px 0 4px;font-size:14.5px;min-width:min(520px,100%)}
table.figs th{text-align:left;font-weight:600;color:var(--muted);padding:4px 14px 4px 0;border-bottom:1px solid var(--rule);font-size:13.5px}
table.figs td{padding:5px 14px 5px 0;border-bottom:1px solid var(--rule);font-variant-numeric:tabular-nums}
table.figs td.n{text-align:right}
.up{color:var(--ok);font-weight:600}.down{color:var(--red);font-weight:600}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.empty{padding:40px 0;color:var(--ink-2);font-size:17px}
.pager{display:flex;gap:10px;align-items:center;margin-top:18px}

/* side column */
aside .box{background:var(--wash);border-radius:6px;padding:14px 16px;margin-bottom:18px}
aside h2{font:700 22px/1.1 var(--cond);margin:0 0 8px}
aside .sub{color:var(--muted);font-size:13.5px;margin:-4px 0 8px}
aside ul{list-style:none;margin:0;padding:0}
aside li{padding:7px 0;border-top:1px solid var(--rule);font-size:14.5px;line-height:1.35}
aside li:first-child{border-top:0}
aside .meta{color:var(--muted);font-size:13px}
.late{color:var(--red);font-weight:600}
.expect{color:var(--ink-2);font-size:13px}

/* company page */
.co-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 30px;align-items:end;padding:8px 0 16px;border-bottom:2px solid var(--ink)}
.co-head h1{font:700 44px/1 var(--cond);margin:0}
.co-head .facts{color:var(--ink-2);margin-top:6px}
.watchnote{margin-top:8px;font-weight:600}
.watchnote.no{color:var(--muted);font-weight:500}
.panel{margin:22px 0}
.panel h2{font:700 26px/1.1 var(--cond);margin:0 0 8px}
.result{border:2px solid var(--ink);border-radius:6px;padding:4px 18px 16px;margin:16px 0}
.result > .when{margin:12px 0 0}
.result .lead{border-bottom:0}
.result.working{border-style:dashed;color:var(--ink-2)}
.spinner{display:inline-block;width:14px;height:14px;border:3px solid var(--rule);border-top-color:var(--red);border-radius:50%;animation:spin .9s linear infinite;vertical-align:-2px;margin-right:8px}
@keyframes spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.spinner{animation:none}}
table.list{border-collapse:collapse;width:100%;font-size:14.5px}
table.list th{text-align:left;color:var(--muted);font-weight:600;font-size:13.5px;padding:6px 10px 6px 0;border-bottom:1px solid var(--rule)}
table.list td{padding:7px 10px 7px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.gone td{color:var(--muted)}
.formrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.formrow input{padding:7px 9px;border:1px solid var(--rule);border-radius:4px}
.results li{padding:12px 0;border-bottom:1px solid var(--rule);list-style:none}
.results{padding:0;margin:0}
.results .t{font:700 22px/1.15 var(--cond)}
.pill{display:inline-block;font-size:12.5px;font-weight:600;padding:1px 7px;border-radius:10px;background:var(--wash);color:var(--ink-2);margin-left:6px;vertical-align:3px}
.pill.watch{background:var(--ink);color:#fff}
.login{max-width:380px;margin:12vh auto;padding:0 20px}
.login h1{font:700 44px/1 var(--cond);margin:0 0 6px}
.login input{width:100%;padding:11px 12px;border:1px solid var(--ink);border-radius:4px;margin:14px 0 10px}
.err{color:var(--red);font-weight:600}
.mainnav{display:flex;gap:4px 22px;flex-wrap:wrap;align-self:end}
.mainnav a{color:#fff;text-decoration:none;font-weight:600;padding:4px 0 6px;border-bottom:3px solid transparent;opacity:.85}
.mainnav a:hover{opacity:1}
.mainnav a[aria-current=page]{opacity:1;border-bottom-color:#fff}
.bc-run{background:var(--wash);border-radius:6px;padding:14px 18px;margin:18px 0 6px}
.bc-run p{margin:0 0 10px}.bc-run form{display:inline-block;margin-right:8px}
.scroll{overflow-x:auto;max-width:100%}
table.nums td,table.nums th{white-space:nowrap}
table.nums td:first-child,table.nums th:first-child{white-space:normal}
table.league td:first-child{width:2.5em;color:var(--muted)}
table.league td:nth-child(2){white-space:normal;min-width:12em}
.notes-box{background:var(--wash);border-radius:6px;padding:4px 16px;margin-top:22px;font-size:14px;color:var(--ink-2);max-width:80ch}
.tools label{display:inline-flex;gap:6px;align-items:center}
.sr{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.mt{margin-top:10px}.mt-s{margin-top:4px}
.page-title{font-size:38px}.who.mid{font-size:26px}
.btn.big{font-size:16px;padding:10px 16px}
.foot{max-width:1320px;margin:0 auto;padding:0 20px 30px;color:var(--muted);font-size:13.5px;display:flex;gap:12px;align-items:center}
.foot button{background:none;border:0;padding:0;color:var(--ink-2);text-decoration:underline;cursor:pointer;font-size:13.5px}

@media (max-width:980px){
  .layout{grid-template-columns:minmax(0,1fr)}
  .mast{grid-template-columns:1fr;grid-template-areas:"brand" "nav" "pulse" "look"}
  .lookup input[type=search]{width:100%;flex:1}
}
@media (max-width:560px){
  main{padding:12px 16px 50px}
  .mast{padding:10px 16px}
  .lead{grid-template-columns:44px minmax(0,1fr);gap:0 12px}
  .flag{width:44px;height:44px;font-size:21px}
  .who{font-size:25px}
  .co-head{grid-template-columns:1fr}
  .co-head h1{font-size:34px}
  .tools input[type=search]{width:100%}
  .tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:0 16px}
  .tabs::-webkit-scrollbar{display:none}
  .tabs a{white-space:nowrap}
  .pulse{font-size:13px;gap:4px 12px}
  .brand{font-size:26px}
  .mainnav{gap:4px 16px;font-size:15px}
  .tools .count{margin-left:0}
  table.figs{font-size:13.5px}
  .hide-sm{display:none}
}
