.ez-compare { --ez-bg:#262320; --ez-bg-soft:#1a1915; --ez-text:#867866; --ez-text-strong:#fff; --ez-accent:#cd402b; --ez-accent-soft:#cd402bb0; --ez-ok:#2ecc71; --ez-no:#c62828; --ez-tbd:#d4a94a; }

.ez-compare-header { text-align:center; margin: 0 0 12px 0; padding: 30px; }
.ez-compare-title { font-size: 36px; line-height:1.18; font-weight:700; letter-spacing:-.9px; color: var(--ez-text-strong); }
.ez-compare-sub { color: var(--ez-text); margin-top:4px; font-size:16px; }

.ez-table-wrap { background: var(--ez-bg); border:1px solid rgba(255,255,255,.1); border-radius:12px; padding:8px; overflow-x:auto; }
.ez-table { width:100%; border-collapse:separate; border-spacing:0; color:var(--ez-text); font-size:13px; }
.ez-table th, .ez-table td { padding:10px; vertical-align:middle; }

.ez-section th {
  background: var(--ez-bg-soft);
  color: #8d7c68;
  text-align: left;
  font-size: 14px;
  font-weight: 700;
  border-radius: 8px;
  padding-left: 25px;
  position: relative;
}

.ez-section-action{
  position: absolute;
  right: 35px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  color: #dcd7d1;
  text-decoration: none;
  font-weight: 700;
  font-size: 12px;
  opacity: .92;
}

.ez-section .ez-section-note { font-weight:600; font-size:12px; opacity:.9; margin-left:6px; }

.ez-col-label {
  width: 38%;
  position: sticky;
  left: 0;
  z-index: 1;
  background: linear-gradient(90deg, var(--ez-bg) 70%, rgba(38,35,32,0));
  text-align: left;
}

.ez-col-label .ez-row-label {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  color: var(--ez-text);
}

.ez-row .ez-row-label[data-idx]::before {
  content: attr(data-idx);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  margin-right: 10px;
  border-radius: 8px;
  font-size: 10px;
  color: #e8e2da75;
  background: rgba(255,255,255,0.08);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.18);
}

.ez-feature-link {
  max-width: 100%;
  color: var(--ez-text) !important;
  text-decoration: none !important;
}

.ez-feature-link__icon {
  margin-left: 8px;
  font-size: 11px;
  opacity: .6;
}

.ez-col-srv { text-align:center; min-width:112px; }
.ez-col-srv .ez-srvname { display:inline-flex; align-items:center; gap:6px; font-weight:700; color:#dcd7d1; font-size:12px; letter-spacing:.2px; }
.ez-pill { font-size:10px; line-height:1; padding:3px 6px; border-radius:999px; background:var(--ez-accent); color:#fff; }

.ez-row:nth-child(odd) td, .ez-row:nth-child(odd) .ez-col-label { background: rgba(255,255,255,0.02); }
.ez-row:hover td, .ez-row:hover .ez-col-label { background: rgba(255,255,255,0.04); }

.ez-yes, .ez-no, .ez-tbd { font-weight:700; font-size:14px; display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:8px; }
.ez-yes { color:#fff; background: rgba(46,204,113,.14); outline:1px solid rgba(46,204,113,.28); }
.ez-no { color:#fff; background: rgba(198,40,40,.14); outline:1px solid rgba(198,40,40,.28); }
.ez-tbd { color:#fff; background: rgba(212,169,74,.14); outline:1px solid rgba(212,169,74,.28); }

.ez-yes::before { content:"✓"; color: var(--ez-ok); }
.ez-no::before { content:"✕"; color: var(--ez-no); }
.ez-tbd::before { content:"—"; color: var(--ez-tbd); font-weight:600; }

.ez-foot-spacer td { padding:6px; }

@media (max-width: 640px) {
  .ez-col-label { width: 60%; }
  .ez-compare-title { font-size: 28px; }
}

.ez-col-label .ez-row-label code {
  font-size: 10px;
  line-height: 1;
  display: inline-block;
  padding: 5px 7px;
  margin-left: 8px;
  border-radius: 6px;
  background: rgba(255,255,255,.06);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.10);
  color: #dcd7d1eb;
  vertical-align: middle;
  white-space: nowrap;
}
