.brand-logo {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  object-fit: contain;
  background: #fff;
}

.brand strong {
  color: #082f52;
  letter-spacing: .08em;
}

.brand small {
  max-width: 230px;
  font-size: 11px;
  white-space: nowrap;
}

@media (max-width: 620px) {
  .brand small { display: none; }
}

.category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.category-card { min-height:290px; padding:26px; display:flex; flex-direction:column; align-items:flex-start; gap:14px; text-align:left; color:#173532; background:#fff; border:1px solid #d9e4e1; border-radius:20px; transition:transform .2s,border-color .2s,box-shadow .2s; }
.category-card:hover { transform:translateY(-4px); border-color:#0f766e; box-shadow:0 14px 35px rgba(15,118,110,.12); }
.category-icon { font-size:38px; }
.category-card strong { font-size:23px; color:#134e4a; }
.category-card small { color:#607773; font-size:14px; font-weight:500; }
.category-link { margin-top:auto; color:#0f766e; font-weight:800; }
@media (max-width:800px) { .category-grid{grid-template-columns:1fr}.category-card{min-height:230px} }

.results-card { border-color:#9fcfc4; }
.results-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:20px; }
.z-result { display:grid; grid-template-columns:1fr auto; gap:12px; padding:17px; border:1px solid #d9e4e1; border-radius:14px; background:#fbfdfc; }
.z-result.flagged { border-color:#ef4444; background:#fff7f7; }
.z-result h3 { margin:0 0 3px; font-size:15px; }
.result-class { color:#607773; font-size:12px; }
.result-numbers { display:flex; gap:8px; }
.result-numbers span { min-width:67px; padding:7px 9px; text-align:center; background:#eef5f3; border-radius:8px; }
.result-numbers small,.result-numbers strong { display:block; }
.result-numbers small { color:#607773; font-size:10px; }
.result-numbers strong { color:var(--result-color,#134e4a); font-size:18px; }
.z-scale { grid-column:1/-1; width:100%; height:54px; }
.results-note { margin:0; padding:0 20px 20px; color:#607773; font-size:12px; }
@media (max-width:800px) { .results-grid{grid-template-columns:1fr}.z-result{grid-template-columns:1fr}.result-numbers{justify-content:flex-start} }
