/* Robust SAMPL logo styling. Inline SVG gets exact theme colours; non-SVG fallback shows text. */
.project-logo{
  display:block;
  width:min(180px,28vw);
  min-width:112px;
  height:auto;
  min-height:34px;
  color:var(--hot);
  fill:currentColor;
  background:none!important;
  background-image:none!important;
  -webkit-mask:none!important;
  mask:none!important;
  filter:none!important;
  flex:0 0 auto;
  overflow:visible;
}

.project-logo-svg{
  aspect-ratio:816/197;
  height:clamp(34px,6.8vw,44px);
}

.project-logo:not(svg){
  display:grid;
  place-items:center start;
  height:clamp(34px,6.8vw,44px);
  font-weight:950;
  font-size:clamp(1.8rem,4.6vw,3rem);
  line-height:1;
  letter-spacing:-.12em;
  color:var(--hot);
}

.project-logo:not(svg)::before{
  content:'SAMPL';
  color:currentColor;
}

body[data-theme=field] .project-logo,
body[data-theme=operator] .project-logo{
  color:var(--ink)!important;
  fill:currentColor!important;
}

body[data-theme=candy] .project-logo{
  color:#4c2d57!important;
  fill:currentColor!important;
}

body[data-theme=colour] .project-logo{
  color:#ff2f6d!important;
  fill:currentColor!important;
}

body[data-theme=purple] .project-logo{
  color:#eaac8b!important;
  fill:currentColor!important;
}

/* Candy Lab: force the first and last pads through the same declaration so W is visually identical to A. */
html body[data-theme=candy] .pad-grid > .pad-card:first-child,
html body[data-theme=candy] .pad-grid > .pad-card:last-child{
  background:#ffdf8e!important;
  background-color:#ffdf8e!important;
}
