/* uth dark theme — training portal (catalog). Tokens from uth-landing (index.css / tailwind). */
:root{
  --uth-bg:#07080e; --uth-panel:#0b0d16; --uth-text:#e8eaf2;
  --uth-dim:#aeb4c6; --uth-mute:#6b7186; --uth-line:rgba(255,255,255,.08);
  --uth-brand:#5eead4;
}
html,body{background:var(--uth-bg)!important;color:var(--uth-text)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;}
a,a:hover,a:focus{color:var(--uth-brand)!important;text-decoration:none!important;}
.navbar,.navbar-default,header,.masthead{background:var(--uth-panel)!important;
  border-bottom:1px solid var(--uth-line)!important;color:var(--uth-text)!important;}
.navbar a,.navbar-brand,.navbar-text{color:var(--uth-text)!important;}
.container,.content,main,section{background:transparent!important;}
.card,.panel,.list-group-item,.well,.jumbotron,.workshop,.catalog-item{
  background:var(--uth-panel)!important;color:var(--uth-text)!important;
  border:1px solid var(--uth-line)!important;border-radius:12px!important;}
h1,h2,h3,h4,h5,.card-title{color:var(--uth-text)!important;}
.text-muted,.muted,small,.description{color:var(--uth-dim)!important;}
.btn-primary,.btn-success,.btn-info{background:var(--uth-brand)!important;
  border-color:var(--uth-brand)!important;color:#07080e!important;font-weight:600!important;}
.btn-default,.btn-secondary,.btn-outline{background:transparent!important;
  border:1px solid var(--uth-line)!important;color:var(--uth-text)!important;}
.btn:hover{filter:brightness(1.08)!important;}
.badge,.label,.tag,.difficulty,.duration{background:rgba(94,234,212,.12)!important;
  color:var(--uth-brand)!important;border:1px solid rgba(94,234,212,.28)!important;border-radius:999px!important;}
table,td,th,.table{border-color:var(--uth-line)!important;color:var(--uth-text)!important;background:transparent!important;}
input,select,textarea{background:#0b0d16!important;color:var(--uth-text)!important;border:1px solid var(--uth-line)!important;}
code,pre,.monospace{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace!important;
  background:#0b0d16!important;color:#e8eaf2!important;border-radius:6px!important;}
::selection{background:rgba(94,234,212,.3)!important;}
/* track section headings injected by training-portal.js to split the catalog by track */
.uth-track-heading{color:var(--uth-brand)!important;font-size:.78rem!important;font-weight:700!important;
  letter-spacing:.14em!important;text-transform:uppercase!important;margin:1.6rem .25rem .8rem!important;
  padding-bottom:.45rem!important;border-bottom:1px solid var(--uth-line)!important;}
/* hero / intro injected at the top of the catalog */
.uth-hero{margin:.25rem .25rem 1.25rem!important;padding:.5rem 0 1.4rem!important;
  border-bottom:1px solid var(--uth-line)!important;}
.uth-hero h1{color:var(--uth-text)!important;font-size:2rem!important;font-weight:800!important;
  letter-spacing:-.015em!important;margin:0 0 .55rem!important;}
.uth-hero .uth-mark{color:var(--uth-brand)!important;}
.uth-hero p{color:var(--uth-dim)!important;max-width:64ch!important;margin:0!important;
  font-size:1.02rem!important;line-height:1.55!important;}
/* track filter dropdown */
.uth-controls{display:flex!important;align-items:center!important;gap:.6rem!important;margin:0 .25rem 1.3rem!important;}
.uth-controls label{color:var(--uth-mute)!important;font-size:.72rem!important;font-weight:700!important;
  letter-spacing:.12em!important;text-transform:uppercase!important;display:flex!important;align-items:center!important;gap:.6rem!important;}
.uth-filter{background:#0b0d16!important;color:var(--uth-text)!important;border:1px solid var(--uth-line)!important;
  border-radius:8px!important;padding:.4rem 2rem .4rem .7rem!important;font-size:.92rem!important;min-width:190px!important;
  cursor:pointer!important;appearance:none!important;-webkit-appearance:none!important;
  background-image:linear-gradient(45deg,transparent 50%,var(--uth-brand) 50%),linear-gradient(135deg,var(--uth-brand) 50%,transparent 50%)!important;
  background-position:calc(100% - 16px) 1.05em,calc(100% - 11px) 1.05em!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;}
.uth-filter:focus{outline:none!important;border-color:var(--uth-brand)!important;}
/* level chips on each card */
.uth-level{display:inline-block!important;font-size:.62rem!important;font-weight:700!important;letter-spacing:.1em!important;
  text-transform:uppercase!important;padding:.12rem .5rem!important;border-radius:999px!important;margin-bottom:.55rem!important;
  border:1px solid var(--uth-line)!important;color:var(--uth-dim)!important;background:rgba(255,255,255,.04)!important;}
.uth-level-beginner{color:#5eead4!important;border-color:rgba(94,234,212,.4)!important;background:rgba(94,234,212,.1)!important;}
.uth-level-intermediate{color:#fbbf24!important;border-color:rgba(251,191,36,.4)!important;background:rgba(251,191,36,.1)!important;}
.uth-level-advanced{color:#f472b6!important;border-color:rgba(244,114,182,.4)!important;background:rgba(244,114,182,.1)!important;}
.uth-level-extreme{color:#f43f5e!important;border-color:rgba(244,63,94,.45)!important;background:rgba(244,63,94,.12)!important;}
.uth-empty{color:var(--uth-mute)!important;padding:2rem .25rem!important;font-style:italic!important;}
