.rocket-compare-root {
  background:var(--bg);
  color:var(--fg);
  min-height:100vh;
  padding-bottom:72px;
  font-family:var(--font-sans);
}
.rocket-compare-root .topbar {
  position:relative;
  background:var(--bg);
  border-bottom-color:var(--line-strong);
  backdrop-filter:none;
  z-index:5;
}
.rocket-compare-root .brand .en { color:var(--fg); }
.rocket-compare-root .brand .li { color:var(--fg-muted); }
.rocket-compare-root .brand svg path { stroke:var(--fg); }
.rocket-compare-root .nav a { color:var(--fg-muted); }
.rocket-compare-root .nav a:hover { background:var(--accent-tint-12);color:var(--fg); }
.rocket-compare-root .nav a.active { background:var(--accent-soft-bg);color:var(--accent); }
.rocket-compare-root .clk .tm { color:var(--fg); }
.rocket-compare-root .clk .tm .sec,
.rocket-compare-root .clk .lab { color:var(--fg-faint); }
.rocket-compare-root .clk + .clk { border-left-color:var(--line-strong); }

.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.rocket-compare-crumb,
.compare-head,
.headcards-wrap,
.share-bar,
.compare-main {
  width:calc(100% - 64px);
  max-width:1440px;
  margin-left:auto;
  margin-right:auto;
}

.rocket-compare-crumb {
  padding:14px 0 0;
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  font-family:var(--font-mono);
  font-size:12px;
  color:var(--fg-faint);
  letter-spacing:0.04em;
}
.rocket-compare-crumb a { color:var(--fg-muted);text-decoration:none; }
.rocket-compare-crumb a:hover { color:var(--accent); }
.rocket-compare-crumb b { color:var(--fg);font-weight:600; }
.crumb-meta {
  margin-left:4px;
  padding-left:12px;
  border-left:1px solid var(--line-strong);
  color:var(--fg-dim);
}

.compare-head {
  padding:24px 0 22px;
  border-bottom:1px solid var(--line-faint);
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:32px;
  flex-wrap:wrap;
}
.compare-head .eyebrow {
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--fg-faint);
  margin-bottom:8px;
}
.compare-head h1 {
  font-family:var(--font-display);
  font-size:38px;
  font-weight:700;
  letter-spacing:-0.02em;
  line-height:1.1;
  margin:0 0 8px;
}
.compare-head p {
  margin:0;
  max-width:720px;
  color:var(--fg-muted);
  font-size:14px;
  line-height:1.55;
}
.compare-head code {
  font-family:var(--font-mono);
  font-size:12.5px;
  padding:1px 5px;
  border-radius:4px;
  background:var(--bg-elev);
  color:var(--fg);
}

.compare-add {
  position:relative;
  align-self:flex-start;
  width:240px;
  max-width:90vw;
}
.compare-add-input {
  width:100%;
  padding:8px 12px;
  border:1px solid var(--line-strong);
  border-radius:8px;
  color:var(--fg);
  font-size:12.5px;
  font-family:var(--font-sans);
  background:var(--bg-elev);
}
.compare-add-input::placeholder { color:var(--fg-muted); }
.compare-add-input:focus { outline:none;border-color:var(--accent); }
.compare-add-list {
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 6px);
  z-index:20;
  margin:0;
  padding:6px;
  list-style:none;
  max-height:320px;
  overflow-y:auto;
  background:var(--bg-inset);
  border:1px solid var(--line);
  border-radius:10px;
  box-shadow:0 12px 24px rgba(0,0,0,0.28);
}
.compare-add-list li {
  padding:8px 10px;
  border-radius:6px;
  font-size:13px;
  color:var(--fg-muted);
  cursor:pointer;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.compare-add-list li.active { background:var(--accent-soft-bg);color:var(--accent); }
.compare-add-list li.empty { color:var(--fg-faint);cursor:default;text-align:center; }
.picker-chips {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.picker-chip {
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border:1px solid var(--line-strong);
  border-radius:999px;
  background:var(--bg-elev);
  color:var(--fg-muted);
  font-size:12px;
  text-decoration:none;
  transition:color 120ms,border-color 120ms,background 120ms;
}
.picker-chip:hover {
  color:var(--accent);
  border-color:rgba(255,106,26,0.5);
  background:rgba(255,106,26,0.06);
}

.remove-col {
  position:absolute;
  top:8px;
  right:8px;
  z-index:2;
  width:22px;
  height:22px;
  border-radius:5px;
  border:1px solid var(--line);
  background:var(--bg-inset);
  color:var(--fg-dim);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  opacity:0.7;
  font-size:14px;
  line-height:1;
  transition:opacity 120ms,color 120ms,border-color 120ms,background 120ms;
}
.headcard:hover .remove-col,
.remove-col:focus-visible { opacity:1; }
.remove-col:hover { color:var(--danger);border-color:var(--danger);background:var(--bg-elev);opacity:1; }

.headcards-wrap { margin-top:14px;overflow-x:auto; }
.headcards {
  min-width:720px;
  display:grid;
  gap:14px;
}
.headcard-spacer {
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:4px;
  padding:0 4px 8px;
}
.headcard-spacer .hc-eyebrow {
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:0.08em;
  color:var(--fg-faint);
}
.headcard-spacer .hc-count {
  font-family:var(--font-display);
  font-size:18px;
  font-weight:700;
  color:var(--fg);
  line-height:1;
}
.headcard {
  position:relative;
  background:var(--bg-elev);
  border:1px solid var(--line);
  border-radius:10px;
  padding:14px 16px;
}
.headcard .hc-top {
  display:flex;
  align-items:center;
  gap:10px;
  padding-right:22px;
}
.headcard .hc-thumb {
  flex:0 0 42px;
  width:42px;
  height:42px;
  border-radius:8px;
  overflow:hidden;
  background:var(--bg-inset);
  border:1px solid var(--line-faint);
  display:flex;
  align-items:center;
  justify-content:center;
}
.headcard .hc-thumb img {
  width:100%;
  height:100%;
  object-fit:cover;
}
.headcard .hc-titles {
  min-width:0;
  flex:1;
}
.headcard .name {
  font-family:var(--font-display);
  font-size:14.5px;
  font-weight:700;
  color:var(--fg);
  margin-bottom:4px;
}
.headcard .name a {
  color:inherit;
  text-decoration:none;
}
.headcard .name a:hover { color:var(--accent); }
.headcard .meta {
  font-family:var(--font-mono);
  font-size:11px;
  color:var(--fg-faint);
  letter-spacing:0.03em;
}
.headcard .quick {
  margin-top:10px;
  display:flex;
  gap:18px;
}
.qk {
  font-family:var(--font-mono);
  font-size:9.5px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--fg-dim);
  margin-bottom:2px;
}
.qv {
  font-family:var(--font-mono);
  font-size:14px;
  color:var(--fg);
  font-weight:700;
}
.qv.ok { color:var(--success); }
.qv.warn { color:var(--warn); }

.compare-main { padding-top:24px; }
.compare-table {
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--bg-inset);
  overflow:hidden;
}
.compare-section { border-top:1px solid var(--line); }
.compare-section:first-child { border-top:none; }
.compare-section-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:16px 20px 8px;
  gap:18px;
  flex-wrap:wrap;
}
.compare-section-head div {
  display:flex;
  align-items:center;
  gap:10px;
}
.compare-section-head h2 {
  font-family:var(--font-display);
  font-size:15px;
  font-weight:700;
  margin:0;
  letter-spacing:0.01em;
}
.compare-section-head > span {
  color:var(--fg-dim);
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:0.05em;
}
.cmp-sec-icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:6px;
  background:var(--line-faint);
  color:var(--accent);
  font-size:14px;
}

.compare-row {
  display:grid;
  align-items:stretch;
  border-top:1px solid var(--line);
}
.compare-row:first-of-type { border-top:none; }
.row-label {
  padding:14px 18px;
  display:flex;
  flex-direction:column;
  gap:4px;
  background:var(--bg-inset);
  border-right:1px solid var(--line);
  font-family:var(--font-sans);
}
.row-label span {
  font-size:13.5px;
  color:var(--fg);
}
.row-label small {
  font-family:var(--font-mono);
  font-size:10.5px;
  color:var(--fg-dim);
  letter-spacing:0.05em;
}
.cmp-cell {
  position:relative;
  padding:14px 18px;
  display:flex;
  flex-direction:column;
  gap:5px;
  justify-content:center;
  border-right:1px solid var(--line);
  font-family:var(--font-mono);
  font-size:14px;
  color:var(--fg);
  overflow:hidden;
}
.cmp-cell:last-child { border-right:none; }
.compare-row:hover .cmp-cell { background:rgba(255,106,26,0.025); }
.cmp-cell .u {
  color:var(--fg-faint);
  font-size:11px;
  margin-left:4px;
}
.cmp-cell .sub {
  color:var(--fg-dim);
  font-size:11px;
  font-family:var(--font-sans);
}
.cmp-cell.leader { color:var(--accent);font-weight:700; }
.cmp-cell.dim { color:var(--fg-dim); }
.cmp-cell.empty {
  background:repeating-linear-gradient(135deg,var(--bg-inset) 0 6px,var(--bg-elev) 6px 12px);
}
.compare-row:hover .cmp-cell.empty { background:repeating-linear-gradient(135deg,var(--bg-inset) 0 6px,var(--bg-elev) 6px 12px); }
.cmp-bar {
  margin-top:6px;
  height:3px;
  border-radius:2px;
  background:var(--line-strong);
  display:block;
  max-width:100%;
}
.cmp-cell.leader .cmp-bar {
  background:linear-gradient(90deg,var(--accent),var(--accent-fg));
}
.cmp-pill {
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:3px 9px;
  border-radius:999px;
  font-family:var(--font-mono);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:0.03em;
  width:fit-content;
}
.cmp-pill-ok { background:rgba(16,185,129,0.14);color:var(--success); }
.cmp-pill-no { background:rgba(94,99,109,0.18);color:var(--fg-muted); }

.share-bar {
  margin-top:18px;
  padding:14px 18px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--bg-elev);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.share-bar > div:first-child {
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  color:var(--fg-faint);
  font-size:12.5px;
}
.share-bar b { color:var(--fg-muted);font-weight:700; }
.share-url {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border:1px solid var(--line);
  border-radius:6px;
  background:var(--bg-inset);
  color:var(--fg-muted);
  font-family:var(--font-mono);
  font-size:11.5px;
}
.share-actions {
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.share-actions a {
  min-height:36px;
  padding:9px 14px;
  border-radius:8px;
  border:1px solid var(--line-strong);
  background:var(--bg-elev);
  color:var(--fg-muted);
  font-size:13px;
  font-weight:600;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:color 120ms,border-color 120ms,background 120ms;
}
.share-actions a:hover { color:var(--fg);border-color:var(--line-strong); }
.copy-link-btn {
  min-height:36px;
  padding:9px 16px;
  border-radius:8px;
  border:1px solid var(--accent);
  background:var(--accent);
  color:#fff;
  font-size:13px;
  font-weight:600;
  font-family:var(--font-sans);
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
  transition:filter 120ms;
}
.copy-link-btn:hover { filter:brightness(1.06); }

@media (max-width: 760px) {
  .rocket-compare-crumb,
  .compare-head,
  .headcards-wrap,
  .share-bar,
  .compare-main {
    width:calc(100% - 36px);
  }
  .compare-head h1 { font-size:31px; }
  .headcards,
  .compare-row {
    min-width:720px;
  }
  .share-url {
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

@media (max-width: 900px) {
  .rocket-compare-root .nav { display:none; }
  .rocket-compare-root .clocks { margin-left:auto; }
}
