:root {
  --kc-bg: #070715;
  --kc-panel: rgba(10, 11, 31, .93);
  --kc-panel-2: rgba(18, 11, 42, .93);
  --kc-line: rgba(153, 111, 255, .3);
  --kc-line-bright: rgba(83, 220, 255, .54);
  --kc-text: #f6f1ff;
  --kc-muted: #bcb7d6;
  --kc-cyan: #45ddff;
  --kc-pink: #ff4eb8;
  --kc-violet: #b96cff;
  --kc-gold: #ffb547;
  --kc-lime: #8dff45;
  --kc-danger: #ff5d87;
  --kc-s1: 8px;
  --kc-s2: 16px;
  --kc-s3: 24px;
  --kc-s4: 32px;
  --kc-s5: 40px;
  --kc-s6: 48px;
}

.kittycats-page {
  background:
    radial-gradient(circle at 8% 8%, rgba(155, 62, 255, .22), transparent 30rem),
    radial-gradient(circle at 92% 24%, rgba(30, 202, 255, .14), transparent 28rem),
    linear-gradient(180deg, rgba(5, 5, 19, .28), rgba(6, 6, 22, .76)),
    #070715 url('/assets/webp/backgrounds/site-background.webp') center top/cover fixed no-repeat;
}

.kittycats-page .page-hero {
  padding: 40px 0 32px;
  background:
    radial-gradient(circle at 50% -30%, rgba(255, 72, 185, .18), transparent 34rem),
    linear-gradient(180deg, rgba(7, 8, 28, .72), rgba(7, 7, 21, .25));
}

.kittycats-page .page-hero h1 { max-width: 940px; margin-inline: auto; }
.kittycats-page .content-section,
.kc-section { padding: 40px 0; }
.kc-section-tight { padding-top: 32px; }

.kc-subnav {
  position: sticky;
  top: 70px;
  z-index: 20;
  border-bottom: 1px solid rgba(151, 107, 255, .24);
  background: rgba(5, 5, 20, .88);
  backdrop-filter: blur(18px);
}
.kc-subnav-inner {
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 4px;
  overflow-x: auto;
  scrollbar-width: thin;
}
.kc-subnav a {
  flex: 0 0 auto;
  padding: 10px 12px;
  border-radius: 9px;
  color: #bdb8d4;
  text-decoration: none;
  font-size: .84rem;
  font-weight: 800;
  transition: .2s ease;
}
.kc-subnav a:hover,
.kc-subnav a.active {
  color: #fff;
  background: linear-gradient(135deg, rgba(184, 83, 255, .23), rgba(255, 72, 184, .16));
  box-shadow: inset 0 0 0 1px rgba(199, 103, 255, .28), 0 0 18px rgba(177, 77, 255, .12);
}
.kc-subnav .kc-subnav-account { margin-left: auto; color: var(--kc-cyan); }

.kc-hero {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid rgba(95, 77, 170, .25);
  background:
    radial-gradient(circle at 14% 18%, rgba(164, 56, 255, .2), transparent 25rem),
    radial-gradient(circle at 88% 42%, rgba(0, 194, 255, .15), transparent 28rem),
    linear-gradient(90deg, rgba(7, 7, 23, .98), rgba(8, 7, 29, .78));
}
.kc-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .35;
  background: url('/assets/webp/backgrounds/flarocity-neon-circuit-background.webp') center/cover;
  mix-blend-mode: screen;
}
.kc-hero-grid {
  position: relative;
  min-height: 520px;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr);
  gap: 32px;
  align-items: center;
  padding-top: 32px;
  padding-bottom: 32px;
}
.kc-hero-copy { position: relative; z-index: 2; }
.kc-hero-copy h1 {
  max-width: 720px;
  margin: 8px 0 16px;
  color: #fff;
  font-size: clamp(3rem, 5.4vw, 6.25rem);
  line-height: .9;
  letter-spacing: -.06em;
}
.kc-hero-copy h1 em,
.kc-section-heading h2 em {
  font-style: normal;
  color: transparent;
  background: linear-gradient(90deg, #ff765d 0%, #ff4eb8 38%, #bb72ff 67%, #4bddff 100%);
  background-clip: text;
  -webkit-background-clip: text;
}
.kc-hero-copy > p:not(.eyebrow):not(.kc-system-note) {
  max-width: 680px;
  margin: 0;
  color: #cac4df;
  font-size: 1.05rem;
  line-height: 1.62;
}
.kc-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.kc-system-note {
  max-width: 680px;
  margin: 16px 0 0;
  padding: 10px 12px;
  border: 1px solid rgba(69, 221, 255, .28);
  border-radius: 10px;
  color: #bdefff;
  background: rgba(9, 21, 43, .72);
  font-size: .82rem;
}
.kc-hero-metrics {
  max-width: 680px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 24px;
  border: 1px solid rgba(126, 91, 213, .28);
  border-radius: 14px;
  background: rgba(6, 7, 24, .72);
  overflow: hidden;
}
.kc-hero-metrics div { min-width: 0; padding: 14px 16px; border-right: 1px solid rgba(126, 91, 213, .2); }
.kc-hero-metrics div:last-child { border-right: 0; }
.kc-hero-metrics span { display: block; color: #908baa; font-size: .68rem; font-weight: 900; text-transform: uppercase; letter-spacing: .11em; }
.kc-hero-metrics strong { display: block; margin-top: 4px; color: #fff; font-size: 1.22rem; }

.kc-hero-art { position: relative; min-height: 410px; }
.kc-hero-art > img {
  width: 100%;
  height: 100%;
  min-height: 410px;
  object-fit: cover;
  border: 1px solid rgba(163, 83, 255, .4);
  border-radius: 22px;
  box-shadow: 0 28px 90px rgba(26, 6, 66, .48), 0 0 48px rgba(175, 53, 255, .12);
}
.kc-art-chip {
  position: absolute;
  display: grid;
  gap: 2px;
  min-width: 176px;
  padding: 10px 12px;
  border: 1px solid rgba(139, 105, 229, .4);
  border-radius: 12px;
  color: #fff;
  background: rgba(5, 6, 24, .9);
  backdrop-filter: blur(14px);
  box-shadow: 0 12px 28px rgba(0,0,0,.35);
}
.kc-art-chip b { color: var(--kc-cyan); font-size: .82rem; }
.kc-art-chip span { color: #b9b4ce; font-size: .72rem; }
.kc-art-chip-one { left: 16px; bottom: 16px; }
.kc-art-chip-two { right: 16px; top: 16px; }

.kc-section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 520px);
  gap: 24px;
  align-items: end;
  margin-bottom: 24px;
}
.kc-section-heading.centered { grid-template-columns: 1fr; max-width: 900px; margin-inline: auto; text-align: center; }
.kc-section-heading h2,
.kc-evidence-copy h2 {
  margin: 6px 0 0;
  color: #fff;
  font-size: clamp(2.25rem, 4vw, 4.2rem);
  line-height: .98;
  letter-spacing: -.045em;
}
.kc-section-heading > p,
.kc-section-heading > div + p { margin: 0; color: var(--kc-muted); line-height: 1.6; }

.kc-tool-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.kc-tool-card {
  --accent: var(--kc-cyan);
  position: relative;
  min-height: 286px;
  display: flex;
  flex-direction: column;
  padding: 24px;
  border: 1px solid color-mix(in srgb, var(--accent) 28%, transparent);
  border-radius: 18px;
  color: inherit;
  text-decoration: none;
  background: linear-gradient(145deg, rgba(17, 12, 44, .94), rgba(8, 9, 27, .95));
  overflow: hidden;
  transition: .24s ease;
}
.kc-tool-card::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--accent); box-shadow: 0 0 20px var(--accent); }
.kc-tool-card::after { content: ""; position: absolute; width: 160px; height: 160px; top: -90px; right: -70px; border-radius: 50%; background: color-mix(in srgb, var(--accent) 22%, transparent); filter: blur(30px); }
.kc-tool-card:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--accent) 65%, transparent); box-shadow: 0 18px 48px color-mix(in srgb, var(--accent) 15%, transparent); }
.kc-tool-card.cyan { --accent: var(--kc-cyan); }
.kc-tool-card.pink { --accent: var(--kc-pink); }
.kc-tool-card.violet { --accent: var(--kc-violet); }
.kc-tool-card.gold { --accent: var(--kc-gold); }
.kc-tool-card img { position: relative; z-index: 1; width: 42px; height: 42px; object-fit: contain; }
.kc-tool-card > span { position: absolute; right: 16px; top: 16px; color: #68637d; font-size: .7rem; font-weight: 900; }
.kc-tool-card h3 { margin: auto 0 8px; color: #fff; font-size: 1.35rem; }
.kc-tool-card p { margin: 0; color: #bdb7d2; line-height: 1.55; }
.kc-tool-card b { margin-top: 16px; color: var(--accent); font-size: .82rem; }

.kc-evidence-section { background: linear-gradient(90deg, rgba(10, 7, 30, .78), rgba(14, 8, 38, .62)); border-block: 1px solid rgba(135, 92, 222, .18); }
.kc-evidence-grid { display: grid; grid-template-columns: minmax(360px, .9fr) minmax(0, 1.1fr); gap: 32px; align-items: center; }
.kc-evidence-art { display: grid; place-items: center; min-width: 0; }
.kc-evidence-art img { display: block; width: min(100%, 480px); height: min(38vw, 400px); object-fit: contain; border: 1px solid rgba(158, 90, 255, .34); border-radius: 20px; box-shadow: 0 22px 70px rgba(45, 8, 92, .32); }
.kc-evidence-copy > p:not(.eyebrow) { color: var(--kc-muted); line-height: 1.65; }
.kc-evidence-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 24px; }
.kc-evidence-list div { padding: 14px 16px; border: 1px solid rgba(139, 100, 220, .28); border-radius: 12px; background: rgba(8, 8, 26, .72); }
.kc-evidence-list strong { display: block; color: #fff; }
.kc-evidence-list span { display: block; margin-top: 3px; color: #aaa5c0; font-size: .82rem; line-height: 1.4; }

.kc-plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; max-width: 1180px; margin: 0 auto; }
.kc-plan-card { position: relative; display: flex; flex-direction: column; padding: 24px; border: 1px solid var(--kc-line); border-radius: 18px; background: linear-gradient(145deg, rgba(17, 12, 42, .94), rgba(8, 8, 27, .95)); }
.kc-plan-card.featured { border-color: rgba(255, 78, 184, .5); box-shadow: 0 18px 60px rgba(255, 53, 178, .13); }
.kc-plan-badge { position: absolute; right: 16px; top: 16px; padding: 5px 9px; border: 1px solid rgba(255, 86, 190, .44); border-radius: 999px; color: #ff8ed2; background: rgba(255, 62, 171, .1); font-size: .65rem; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.kc-plan-card h3 { margin: 8px 0; color: #fff; font-size: 1.45rem; }
.kc-plan-price { display: flex; gap: 8px; align-items: end; padding: 8px 0 16px; }
.kc-plan-price strong { color: var(--kc-pink); font-size: 2.7rem; line-height: 1; }
.kc-plan-price span { color: #9c98b2; padding-bottom: 3px; }
.kc-plan-card ul { flex: 1; display: grid; gap: 8px; padding: 0; margin: 0 0 24px; list-style: none; }
.kc-plan-card li { position: relative; padding-left: 18px; color: #c2bdd4; font-size: .88rem; }
.kc-plan-card li::before { content: ""; position: absolute; left: 2px; top: .55em; width: 6px; height: 6px; border-radius: 50%; background: var(--kc-cyan); box-shadow: 0 0 9px var(--kc-cyan); }

.kc-filter-bar {
  display: grid;
  grid-template-columns: minmax(260px, 1.4fr) repeat(2, minmax(170px, .65fr)) auto;
  gap: 8px;
  align-items: end;
  padding: 16px;
  border: 1px solid var(--kc-line);
  border-radius: 16px;
  background: rgba(9, 9, 29, .9);
}
.kc-filter-bar.cattery { grid-template-columns: minmax(260px, 1.5fr) minmax(170px, .65fr) minmax(140px, .55fr) auto; }
.kc-filter-bar label { display: grid; gap: 5px; color: #aaa5c2; font-size: .72rem; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.kc-filter-bar :is(input, select),
.kc-input-panel textarea {
  width: 100%;
  border: 1px solid rgba(143, 103, 224, .36);
  border-radius: 10px;
  color: #fff;
  background: #08091d;
  outline: none;
}
.kc-filter-bar :is(input, select) { min-height: 44px; padding: 10px 12px; }
.kc-filter-bar :is(input, select):focus,
.kc-input-panel textarea:focus { border-color: var(--kc-cyan); box-shadow: 0 0 0 3px rgba(69,221,255,.1); }

.kc-inline-stats,
.kc-cattery-kpis,
.kc-market-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 16px;
  border: 1px solid rgba(133, 94, 214, .26);
  border-radius: 14px;
  background: rgba(7, 8, 25, .78);
  overflow: hidden;
}
.kc-cattery-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0 0 16px; }
.kc-market-kpis { margin: 0 0 16px; }
.kc-inline-stats div,
.kc-cattery-kpis div,
.kc-market-kpis div { padding: 14px 16px; border-right: 1px solid rgba(133, 94, 214, .18); }
.kc-inline-stats div:last-child,
.kc-cattery-kpis div:last-child,
.kc-market-kpis div:last-child { border-right: 0; }
.kc-inline-stats span,
.kc-cattery-kpis span,
.kc-market-kpis span { display: block; color: #8f8aa5; font-size: .66rem; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.kc-inline-stats strong,
.kc-cattery-kpis strong,
.kc-market-kpis strong { display: block; margin-top: 4px; color: #fff; font-size: 1.25rem; }
.kc-cattery-kpis small,
.kc-market-kpis small { display: block; margin-top: 3px; color: #8f8ba3; font-size: .72rem; }
.kc-market-kpis small.up { color: #93ff72; }
.kc-market-kpis small.down { color: #ff8cb1; }

.kc-trait-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.kc-trait-card { min-height: 216px; display: flex; flex-direction: column; padding: 18px; border: 1px solid var(--kc-line); border-radius: 15px; background: linear-gradient(145deg, rgba(16, 11, 40, .94), rgba(8, 8, 26, .94)); }
.kc-trait-top { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.kc-trait-top > span { color: var(--kc-cyan); font-size: .7rem; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.kc-trait-top b { display: inline-block; padding: 4px 7px; border-radius: 999px; font-size: .58rem; text-transform: uppercase; letter-spacing: .08em; }
.kc-trait-top b.base { color: #9df776; background: rgba(120,255,85,.1); border: 1px solid rgba(120,255,85,.28); }
.kc-trait-top b.retired { color: #ff98c7; background: rgba(255,78,184,.1); border: 1px solid rgba(255,78,184,.3); }
.kc-trait-card h2 { margin: 12px 0 8px; color: #fff; font-size: 1.25rem; }
.kc-trait-card p { flex: 1; margin: 0; color: #b5b0c9; font-size: .84rem; line-height: 1.5; }
.kc-trait-card dl { display: flex; gap: 12px; flex-wrap: wrap; margin: 14px 0 0; }
.kc-trait-card dl div { min-width: 90px; }
.kc-trait-card dt { color: #77738d; font-size: .62rem; text-transform: uppercase; letter-spacing: .08em; }
.kc-trait-card dd { margin: 2px 0 0; color: #e9e4f7; font-size: .75rem; }

@media (min-width: 1500px) {
  .kc-trait-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

.kc-empty-state {
  display: grid;
  grid-template-columns: minmax(300px, .85fr) minmax(0, 1.15fr);
  gap: 24px;
  align-items: center;
  margin-top: 16px;
  padding: 24px;
  border: 1px solid var(--kc-line);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(18, 11, 42, .9), rgba(8, 8, 27, .93));
}
.kc-empty-state img { width: 100%; max-height: 360px; object-fit: cover; border-radius: 14px; }
.kc-empty-state h2 { margin: 8px 0; color: #fff; font-size: clamp(2rem, 3vw, 3.25rem); line-height: 1; }
.kc-empty-state p { color: var(--kc-muted); line-height: 1.6; }
.kc-empty-state ul { padding-left: 20px; color: #bdb7ce; line-height: 1.7; }
.kc-empty-state.cattery { margin-top: 16px; }

.kc-counter-layout,
.kc-import-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(400px, .86fr); gap: 16px; align-items: stretch; }
.kc-input-panel,
.kc-result-panel,
.kc-preview-panel,
.kc-account-panel,
.kc-market-panel {
  border: 1px solid var(--kc-line);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(17, 12, 42, .94), rgba(8, 8, 27, .95));
  box-shadow: 0 18px 48px rgba(0,0,0,.24);
}
.kc-input-panel,
.kc-result-panel,
.kc-preview-panel,
.kc-account-panel,
.kc-market-panel { padding: 24px; }
.kc-panel-heading { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.kc-panel-heading h2 { margin: 4px 0 0; color: #fff; font-size: 1.55rem; }
.kc-panel-heading > span { color: #87839b; font-size: .78rem; }
.kc-text-button { padding: 7px 9px; border: 1px solid rgba(69,221,255,.28); border-radius: 8px; color: var(--kc-cyan); background: rgba(69,221,255,.06); cursor: pointer; }
.kc-input-panel textarea { min-height: 320px; margin-top: 16px; padding: 14px; resize: vertical; font: .86rem/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.kc-privacy-note { margin: 12px 0 0; color: #8f8aa4; font-size: .76rem; line-height: 1.5; }

.kc-result-panel { display: flex; flex-direction: column; align-items: center; text-align: center; }
.kc-score-ring {
  width: 144px;
  height: 144px;
  display: grid;
  place-items: center;
  align-content: center;
  border: 1px solid rgba(186, 93, 255, .5);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(180, 65, 255, .22), rgba(8,8,27,.92) 66%);
  box-shadow: inset 0 0 32px rgba(178, 70, 255, .13), 0 0 28px rgba(178, 70, 255, .12);
}
.kc-score-ring strong { color: #fff; font-size: 2.45rem; line-height: 1; }
.kc-score-ring span { margin-top: 4px; color: #aca6bf; font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; }
.kc-score-ring.small { width: 112px; height: 112px; margin-left: auto; }
.kc-score-ring.small strong { font-size: 1.8rem; }
.kc-score-bar { width: 100%; height: 8px; margin: 18px 0 10px; border-radius: 999px; background: #111226; overflow: hidden; }
.kc-score-bar i { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #ff4eb8, #b96cff, #45ddff); box-shadow: 0 0 12px #b96cff; transition: width .35s ease; }
.kc-result-panel > p { margin: 0 0 16px; color: #aba6bf; }
.kc-counter-traits { width: 100%; display: grid; gap: 6px; }
.kc-counter-traits > div { display: grid; grid-template-columns: 130px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 9px 10px; border: 1px solid rgba(133, 94, 214, .22); border-radius: 9px; text-align: left; background: rgba(6,7,23,.58); }
.kc-counter-traits span { color: #8f8ba2; font-size: .76rem; }
.kc-counter-traits strong { min-width: 0; color: #f1ecfb; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kc-counter-traits b { color: #8e899e; font-size: .65rem; text-transform: uppercase; }
.kc-counter-traits > div.counted b { color: var(--kc-lime); }
.kc-counter-traits > div.base b { color: var(--kc-gold); }
.kc-counter-traits.compact > div { grid-template-columns: 108px minmax(0, 1fr) auto; }

.kc-rules-section { border-top: 1px solid rgba(132, 92, 214, .18); background: rgba(8, 7, 25, .54); }
.kc-rule-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.kc-rule-grid div { padding: 14px 16px; border: 1px solid rgba(139, 100, 220, .25); border-radius: 12px; background: rgba(8,8,26,.74); }
.kc-rule-grid span { display: block; color: #8f8ba4; font-size: .68rem; text-transform: uppercase; letter-spacing: .09em; }
.kc-rule-grid strong { display: block; margin-top: 4px; color: #fff; }

.kc-market-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.kc-ranking-list { display: grid; gap: 7px; margin-top: 16px; }
.kc-ranking-list > div { position: relative; display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; gap: 8px; align-items: center; min-height: 38px; padding: 8px 10px; border: 1px solid rgba(132, 94, 213, .18); border-radius: 9px; overflow: hidden; }
.kc-ranking-list i { position: absolute; inset: auto auto 0 0; width: var(--rank-width); height: 2px; background: linear-gradient(90deg, var(--kc-violet), var(--kc-cyan)); box-shadow: 0 0 10px var(--kc-cyan); }
.kc-ranking-list span { color: #77728c; font-weight: 900; }
.kc-ranking-list strong { color: #fff; }
.kc-ranking-list b { color: var(--kc-cyan); }
.kc-market-policy { display: grid; grid-template-columns: 190px 1fr; gap: 16px; align-items: center; margin-top: 16px; padding: 14px 16px; border: 1px solid rgba(255, 181, 71, .26); border-radius: 12px; background: rgba(39, 23, 7, .38); }
.kc-market-policy strong { color: var(--kc-gold); }
.kc-market-policy p { margin: 0; color: #c4bed0; line-height: 1.55; }

.kc-member-hero { padding: 32px 0 24px; border-bottom: 1px solid rgba(133,94,213,.24); background: linear-gradient(180deg, rgba(13,8,38,.8), rgba(7,7,23,.34)); }
.kc-member-head { display: flex; justify-content: space-between; gap: 24px; align-items: center; }
.kc-member-head h1 { margin: 6px 0 8px; color: #fff; font-size: clamp(2.6rem,5vw,5rem); line-height: .92; letter-spacing: -.05em; }
.kc-member-head p:not(.eyebrow) { max-width: 680px; margin: 0; color: var(--kc-muted); }
.kc-member-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: end; }
.kc-tier-card { min-width: 220px; padding: 16px 20px; border: 1px solid rgba(180,85,255,.4); border-radius: 14px; background: rgba(12,8,35,.82); text-align: right; }
.kc-tier-card span { display: block; color: #8d88a2; font-size: .68rem; text-transform: uppercase; letter-spacing: .1em; }
.kc-tier-card strong { display: block; margin: 4px 0; color: var(--kc-pink); font-size: 1.7rem; }
.kc-tier-card small { color: #beb8cc; }

.kc-cat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.kc-cat-card { border: 1px solid var(--kc-line); border-radius: 16px; background: linear-gradient(145deg, rgba(17,12,42,.94), rgba(8,8,27,.95)); overflow: hidden; }
.kc-cat-card-top { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 14px; border-bottom: 1px solid rgba(133,94,213,.2); }
.kc-cat-avatar { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(184,93,255,.4); border-radius: 12px; color: var(--kc-pink); background: rgba(183,83,255,.1); font-size: 1.35rem; font-weight: 900; }
.kc-cat-avatar.large { width: 72px; height: 72px; font-size: 2rem; }
.kc-cat-card-top span { display: block; color: #817d94; font-size: .64rem; text-transform: uppercase; letter-spacing: .08em; }
.kc-cat-card-top h2 { margin: 3px 0 0; color: #fff; font-size: 1.1rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kc-cat-card-top > b { color: var(--kc-cyan); font-size: 1.15rem; }
.kc-cat-traits { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1px; background: rgba(119,86,194,.12); }
.kc-cat-traits div { min-width: 0; padding: 8px 10px; background: rgba(8,8,27,.96); }
.kc-cat-traits span { display: block; color: #77738c; font-size: .58rem; text-transform: uppercase; letter-spacing: .07em; }
.kc-cat-traits strong { display: block; margin-top: 2px; color: #ded8eb; font-size: .75rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kc-cat-card-footer { display: flex; justify-content: space-between; gap: 8px; align-items: center; padding: 10px 14px; }
.kc-cat-card-footer span { color: #747087; font-size: .68rem; }
.kc-cat-card-footer a { color: var(--kc-cyan); font-size: .75rem; font-weight: 900; text-decoration: none; }

.kc-import-layout { grid-template-columns: minmax(0, .95fr) minmax(420px, 1.05fr); }
.kc-preview-panel { min-height: 568px; }
.kc-import-placeholder { min-height: 430px; display: grid; place-items: center; align-content: center; text-align: center; }
.kc-import-placeholder img { width: min(100%, 420px); max-height: 300px; object-fit: contain; opacity: .75; }
.kc-import-placeholder p { max-width: 390px; color: #9d98af; }
.kc-import-identity { display: grid; grid-template-columns: 48px 1fr auto; gap: 10px; align-items: center; margin: 18px 0 12px; padding: 12px; border: 1px solid rgba(132,94,213,.22); border-radius: 12px; }
.kc-import-identity span { color: #7f7a91; font-size: .65rem; text-transform: uppercase; }
.kc-import-identity h3 { margin: 2px 0; color: #fff; }
.kc-import-identity small { color: #8f8a9f; }
.kc-import-identity > b { color: var(--kc-cyan); font-size: 1.3rem; }
.kc-import-warnings { display: grid; gap: 6px; margin: 12px 0; }
.kc-import-warnings p { margin: 0; padding: 8px 10px; border: 1px solid rgba(255,181,71,.28); border-radius: 8px; color: #ffd79a; background: rgba(50,30,8,.36); font-size: .75rem; }
.kc-import-methods { border-top: 1px solid rgba(132,94,213,.18); background: rgba(8,7,25,.5); }
.kc-method-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.kc-method-grid > div { padding: 18px; border: 1px solid var(--kc-line); border-radius: 14px; background: rgba(10,9,31,.78); }
.kc-method-grid > div > strong { color: var(--kc-cyan); font-size: .66rem; text-transform: uppercase; letter-spacing: .1em; }
.kc-method-grid h3 { margin: 8px 0; color: #fff; }
.kc-method-grid p { margin: 0; color: #aaa5bd; line-height: 1.55; }

.kc-account-grid { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 16px; align-items: start; }
.kc-account-main { display: grid; gap: 16px; }
.kc-account-side .sticky { position: sticky; top: 136px; }
.kc-account-panel > p { color: var(--kc-muted); line-height: 1.6; }
.kc-account-panel h2 { margin: 6px 0; color: #fff; }
.kc-pairing-code { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin: 18px 0; padding: 16px; border: 1px solid rgba(69,221,255,.28); border-radius: 14px; background: rgba(8,20,40,.54); }
.kc-pairing-code > strong { color: #fff; font: 900 2rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing: .18em; }
.kc-pairing-code > div { display: flex; align-items: center; gap: 10px; }
.kc-pairing-code span { color: #918ca1; font-size: .75rem; }
.kc-device-list,
.kc-payment-list { display: grid; gap: 7px; }
.kc-device-list article,
.kc-payment-list article { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 10px 12px; border: 1px solid rgba(132,94,213,.2); border-radius: 10px; background: rgba(7,7,24,.58); }
.kc-device-list article.device { margin-left: 22px; border-style: dashed; }
.kc-device-list strong,
.kc-payment-list strong { color: #fff; }
.kc-device-list span,
.kc-payment-list span { display: block; margin-top: 2px; color: #817d91; font-size: .7rem; }
.kc-device-list b { color: var(--kc-lime); font-size: .72rem; }
.kc-payment-list article { grid-template-columns: minmax(0,1fr) auto auto; }
.kc-payment-list b { color: var(--kc-cyan); }
.kc-payment-list em { font-style: normal; color: #aaa5b9; font-size: .68rem; text-transform: uppercase; }
.kc-mini-empty { padding: 14px; border: 1px dashed rgba(132,94,213,.28); border-radius: 10px; color: #8e899d; text-align: center; }
.kc-compact-plan { display: flex; justify-content: space-between; gap: 10px; align-items: center; padding: 10px 0; border-bottom: 1px solid rgba(132,94,213,.18); }
.kc-compact-plan strong { color: #fff; }
.kc-compact-plan span { display: block; color: #858094; font-size: .7rem; }
.kc-compact-plan b { color: var(--kc-pink); }
.kc-check-list { display: grid; gap: 7px; padding: 0; margin: 18px 0; list-style: none; }
.kc-check-list li { position: relative; padding-left: 18px; color: #b9b3c8; font-size: .8rem; }
.kc-check-list li::before { content: ""; position: absolute; left: 2px; top: .5em; width: 6px; height: 6px; border-radius: 50%; background: var(--kc-lime); box-shadow: 0 0 8px var(--kc-lime); }

.kc-cat-detail-head { display: grid; grid-template-columns: 72px minmax(0,1fr) auto; gap: 16px; align-items: center; }
.kc-cat-detail-head h1 { margin: 4px 0; color: #fff; font-size: clamp(2.5rem,5vw,4.8rem); line-height: .94; }
.kc-cat-detail-head p:not(.eyebrow) { margin: 0; color: #9b96aa; }
.kc-cat-detail-grid { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 16px; align-items: start; }
.kc-detail-traits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 16px; }
.kc-detail-traits > div { padding: 12px; border: 1px solid rgba(132,94,213,.22); border-radius: 10px; background: rgba(7,7,24,.58); }
.kc-detail-traits span { display: block; color: #7e798e; font-size: .62rem; text-transform: uppercase; letter-spacing: .08em; }
.kc-detail-traits strong { display: block; margin: 4px 0; color: #fff; }
.kc-detail-traits b { color: #928ca2; font-size: .65rem; }
.kc-record-dl { display: grid; gap: 0; margin: 16px 0; }
.kc-record-dl div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid rgba(132,94,213,.17); }
.kc-record-dl dt { color: #858096; }
.kc-record-dl dd { margin: 0; color: #fff; text-align: right; }
.kc-danger-button { width: 100%; padding: 10px 12px; border: 1px solid rgba(255,93,135,.36); border-radius: 10px; color: #ff98b5; background: rgba(255,73,123,.08); cursor: pointer; }

.kc-pagination { margin-top: 20px; }
.kc-pagination nav { display: flex; justify-content: center; }
.kc-pagination a,
.kc-pagination span { color: #c7c1d5; }

/* Laravel pagination ships utility-class markup, but this site does not load
   Tailwind on public pages. Keep the controls compact and fully bounded here. */
.kc-pagination nav { width: 100%; }
.kc-pagination nav > div { width: 100%; align-items: center; justify-content: space-between; gap: 12px; }
.kc-pagination nav > div:first-child { display: none; }
.kc-pagination nav > div:last-child { display: flex; }
.kc-pagination nav > div:last-child > div:last-child > span { display: inline-flex; align-items: center; }
.kc-pagination nav a,
.kc-pagination nav span[aria-current] > span,
.kc-pagination nav span[aria-disabled] > span {
  min-width: 36px;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 11px;
  border: 1px solid rgba(145, 99, 224, .3);
  border-radius: 8px;
  color: #d8d1ea;
  background: rgba(8, 8, 27, .82);
  text-decoration: none;
}
.kc-pagination nav a:hover { color: #fff; border-color: var(--kc-cyan); box-shadow: 0 0 14px rgba(69, 221, 255, .14); }
.kc-pagination nav span[aria-current] > span { color: #fff; border-color: var(--kc-pink); background: rgba(255, 78, 184, .16); }
.kc-pagination nav svg { width: 20px; height: 20px; display: block; }
.kc-pagination nav p { margin: 0; color: var(--kc-muted); font-size: .82rem; }

/* Keep the market empty state as a real two-column panel instead of allowing
   the source artwork to determine the page height. */
.kc-empty-state.market {
  grid-template-columns: minmax(0, 48%) minmax(0, 52%);
  min-height: 0;
  padding: 24px;
  overflow: hidden;
}
.kc-empty-state.market > img {
  width: 100%;
  height: clamp(260px, 28vw, 430px);
  max-height: 430px;
  object-fit: contain;
  object-position: center;
}
.kc-empty-state.market > div { min-width: 0; }
.kc-api-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.kc-api-card { min-width: 0; padding: 24px; border: 1px solid rgba(145, 99, 224, .32); border-radius: 16px; background: linear-gradient(145deg, rgba(13, 13, 39, .94), rgba(20, 10, 42, .9)); box-shadow: inset 0 1px rgba(255,255,255,.03); }
.kc-api-card h2 { margin: 12px 0 8px; font-size: 1.2rem; }
.kc-api-card code { display: block; max-width: 100%; padding: 10px 12px; overflow-wrap: anywhere; color: #72eaff; border: 1px solid rgba(69, 221, 255, .22); border-radius: 8px; background: rgba(5, 8, 25, .8); }
.kc-api-card p { margin: 12px 0 0; color: var(--kc-muted); }
.kc-api-card a { display: inline-block; margin-top: 12px; color: var(--kc-cyan); font-weight: 800; text-decoration: none; }
.kc-method { display: inline-flex; padding: 5px 9px; border-radius: 7px; font-size: .72rem; font-weight: 900; letter-spacing: .08em; }
.kc-method.get { color: #5feaff; background: rgba(31, 184, 255, .14); }
.kc-method.post { color: #ff72cc; background: rgba(255, 68, 183, .14); }
.kc-api-note { margin-top: 16px; padding: 16px 24px; border: 1px solid rgba(255, 68, 183, .22); border-radius: 16px; background: rgba(20, 9, 39, .84); }
.kc-api-note p { margin: 4px 0 0; color: var(--kc-muted); }
.auth-switch { margin: 16px 0 0; color: #9f9ab0; text-align: center; }
.auth-switch a { color: var(--kc-cyan); }
.auth-card label small { color: #858196; font-size: .72rem; font-weight: 400; }

@media (max-width: 1180px) {
  .kc-hero-grid { grid-template-columns: minmax(0,.95fr) minmax(390px,1.05fr); }
  .kc-tool-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kc-cat-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kc-trait-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kc-cattery-kpis { grid-template-columns: repeat(5,minmax(120px,1fr)); overflow-x: auto; }
  .kc-evidence-grid { grid-template-columns: 1fr; }
  .kc-evidence-art img { width: min(100%, 560px); height: min(52vw, 390px); }
  .kc-empty-state.market { grid-template-columns: 1fr; }
  .kc-empty-state.market > img { width: min(100%, 560px); height: min(48vw, 360px); margin-inline: auto; }
}

@media (max-width: 920px) {
  .kc-subnav { top: 64px; }
  .kc-hero-grid { min-height: 0; grid-template-columns: 1fr; }
  .kc-hero-art { min-height: 360px; }
  .kc-hero-art > img { min-height: 360px; }
  .kc-art-chip-one { left: 12px; }
  .kc-art-chip-two { right: 12px; }
  .kc-section-heading,
  .kc-evidence-grid,
  .kc-counter-layout,
  .kc-import-layout,
  .kc-account-grid,
  .kc-cat-detail-grid { grid-template-columns: 1fr; }
  .kc-section-heading { align-items: start; }
  .kc-plan-grid { grid-template-columns: 1fr; max-width: 680px; }
  .kc-plan-card { min-height: 0; }
  .kc-filter-bar,
  .kc-filter-bar.cattery { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kc-market-grid { grid-template-columns: 1fr; }
  .kc-account-side .sticky { position: static; }
  .kc-rule-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kc-detail-traits { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 700px) {
  .kittycats-page .page-hero { padding: 32px 0 24px; }
  .kc-section { padding: 32px 0; }
  .kc-subnav-inner { padding-inline: 12px; }
  .kc-empty-state.market { grid-template-columns: 1fr; padding: 16px; }
  .kc-empty-state.market > img { height: min(72vw, 320px); }
  .kc-api-grid { grid-template-columns: 1fr; }
  .kc-api-card { padding: 16px; }
  .kc-pagination nav > div:first-child { display: flex; }
  .kc-pagination nav > div:last-child { display: none; }
  .kc-hero-grid { padding-top: 24px; padding-bottom: 24px; }
  .kc-hero-copy h1 { font-size: clamp(2.75rem,14vw,4.5rem); }
  .kc-hero-metrics,
  .kc-inline-stats,
  .kc-market-kpis { grid-template-columns: 1fr 1fr; }
  .kc-hero-metrics div:nth-child(2),
  .kc-inline-stats div:nth-child(2),
  .kc-market-kpis div:nth-child(2) { border-right: 0; }
  .kc-hero-metrics div:nth-child(-n+2),
  .kc-inline-stats div:nth-child(-n+2),
  .kc-market-kpis div:nth-child(-n+2) { border-bottom: 1px solid rgba(133,94,213,.18); }
  .kc-hero-art,
  .kc-hero-art > img { min-height: 270px; }
  .kc-art-chip { display: none; }
  .kc-tool-grid,
  .kc-trait-grid,
  .kc-cat-grid,
  .kc-method-grid { grid-template-columns: 1fr; }
  .kc-evidence-list { grid-template-columns: 1fr; }
  .kc-filter-bar,
  .kc-filter-bar.cattery { grid-template-columns: 1fr; }
  .kc-filter-bar .button { width: 100%; }
  .kc-empty-state { grid-template-columns: 1fr; padding: 16px; }
  .kc-empty-state img { max-height: 260px; }
  .kc-rule-grid { grid-template-columns: 1fr; }
  .kc-counter-traits > div,
  .kc-counter-traits.compact > div { grid-template-columns: 96px minmax(0,1fr); }
  .kc-counter-traits b { grid-column: 2; }
  .kc-member-head { align-items: start; flex-direction: column; }
  .kc-member-actions { justify-content: start; }
  .kc-tier-card { width: 100%; text-align: left; }
  .kc-cattery-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); overflow: visible; }
  .kc-cattery-kpis div { border-bottom: 1px solid rgba(133,94,213,.18); }
  .kc-cattery-kpis div:nth-child(2n) { border-right: 0; }
  .kc-cattery-kpis div:last-child { grid-column: 1/-1; border-bottom: 0; }
  .kc-pairing-code { align-items: start; flex-direction: column; }
  .kc-pairing-code > div { width: 100%; align-items: start; flex-direction: column; }
  .kc-pairing-code .button { width: 100%; }
  .kc-payment-list article { grid-template-columns: minmax(0,1fr) auto; }
  .kc-payment-list em { grid-column: 1/-1; }
  .kc-cat-detail-head { grid-template-columns: 64px minmax(0,1fr); }
  .kc-score-ring.small { grid-column: 1/-1; margin: 8px 0 0; }
  .kc-detail-traits { grid-template-columns: 1fr; }
  .kc-market-policy { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .kc-tool-card,
  .kc-score-bar i { transition: none; }
}

/* Source-aware research pages */
.kc-filter-bar-compact { grid-template-columns: minmax(220px,1fr) minmax(220px,1fr) auto; }
.kc-research-warning {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: center;
  margin: 16px 0 24px;
  padding: 14px 16px;
  border: 1px solid rgba(255,181,71,.3);
  border-radius: 12px;
  background: linear-gradient(90deg, rgba(255,160,52,.09), rgba(154,79,255,.07));
}
.kc-research-warning strong { color: #ffd488; white-space: nowrap; }
.kc-research-warning span { color: #c7c1d8; line-height: 1.5; }
.kc-order-list { display: grid; gap: 16px; }
.kc-order-card { padding: 24px; border: 1px solid var(--kc-line); border-radius: 18px; background: linear-gradient(145deg, rgba(17,12,43,.94), rgba(7,8,25,.96)); }
.kc-order-card > header { display: flex; justify-content: space-between; gap: 16px; align-items: start; }
.kc-order-card h2 { margin: 4px 0 0; color: #fff; font-size: clamp(1.5rem,2.4vw,2.35rem); }
.kc-source-badges { display: flex; flex-wrap: wrap; gap: 6px; justify-content: end; }
.kc-source-badges :is(b,span),
.kc-dominance-track li div b { padding: 5px 8px; border: 1px solid rgba(163,109,255,.28); border-radius: 999px; color: #cfc6e8; background: rgba(126,74,210,.09); font-size: .64rem; text-transform: uppercase; letter-spacing: .08em; }
.kc-order-meta { margin: 10px 0 16px; color: #918ba8; font-size: .78rem; }
.kc-dominance-track { display: grid; gap: 4px; max-height: 560px; margin: 0; padding: 0 4px 0 0; list-style: none; overflow: auto; scrollbar-width: thin; }
.kc-dominance-track li { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; gap: 10px; align-items: center; min-height: 44px; padding: 8px 10px; border: 1px solid rgba(124,93,193,.18); border-radius: 9px; background: rgba(5,6,22,.58); }
.kc-dominance-track li:nth-child(1) { border-color: rgba(255,181,71,.42); box-shadow: inset 3px 0 0 var(--kc-gold); }
.kc-rank { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; color: var(--kc-cyan); background: rgba(69,221,255,.08); font-weight: 900; font-size: .78rem; }
.kc-dominance-track strong { color: #fff; }
.kc-dominance-track li div { display: flex; flex-wrap: wrap; gap: 4px; justify-content: end; }
.kc-dominance-track b.retired { color: #ff9acb; border-color: rgba(255,78,184,.3); }
.kc-dominance-track b.limited { color: #ffd38b; border-color: rgba(255,181,71,.3); }
.kc-dominance-track b.base { color: #aaff85; border-color: rgba(141,255,69,.3); }
.kc-order-note { margin: 14px 0 0; color: #aaa5c0; }
.kc-timeline { position: relative; display: grid; gap: 8px; }
.kc-timeline::before { content: ""; position: absolute; left: 176px; inset-block: 0; width: 1px; background: linear-gradient(var(--kc-cyan), var(--kc-violet), var(--kc-pink)); opacity: .45; }
.kc-timeline-item { position: relative; display: grid; grid-template-columns: 160px minmax(0,1fr); gap: 32px; padding: 16px 18px; border: 1px solid rgba(130,94,204,.24); border-radius: 14px; background: rgba(8,8,27,.84); }
.kc-timeline-item::before { content: ""; position: absolute; left: 170px; top: 27px; width: 13px; height: 13px; border-radius: 50%; background: var(--kc-pink); box-shadow: 0 0 14px var(--kc-pink); }
.kc-timeline-date { display: grid; align-content: start; gap: 3px; }
.kc-timeline-date strong { color: #fff; }
.kc-timeline-date span { color: var(--kc-pink); font-size: .7rem; font-weight: 900; text-transform: uppercase; letter-spacing: .09em; }
.kc-timeline-copy h2 { margin: 4px 0; color: #fff; font-size: 1.25rem; }
.kc-timeline-copy p { margin: 4px 0; color: #b7b1c9; }
.kc-timeline-copy small { color: #85809a; }
.kc-rule-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.kc-rule-grid article,
.kc-document-grid article { padding: 20px; border: 1px solid rgba(145,99,224,.25); border-radius: 15px; background: linear-gradient(145deg, rgba(16,11,42,.92), rgba(7,8,24,.94)); }
.kc-rule-grid article > span { display: inline-flex; padding: 4px 7px; border-radius: 999px; color: var(--kc-cyan); background: rgba(69,221,255,.08); font-size: .62rem; font-weight: 900; text-transform: uppercase; letter-spacing: .09em; }
.kc-rule-grid h3,
.kc-document-grid h3 { margin: 10px 0 6px; color: #fff; }
.kc-rule-grid p,
.kc-document-grid p { color: #b8b2ca; line-height: 1.55; }
.kc-rule-grid small { color: #85809a; }
.kc-source-heading { margin-top: 40px; }
.kc-document-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.kc-document-grid article > div:first-child { display: flex; justify-content: space-between; gap: 8px; }
.kc-document-grid article > div:first-child b { color: var(--kc-pink); }
.kc-document-grid article > div:first-child span { color: #8e89a5; font-size: .68rem; }
.kc-document-grid dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; margin: 14px 0 0; }
.kc-document-grid dl div { padding: 8px; border-radius: 8px; background: rgba(4,5,19,.58); }
.kc-document-grid dt { color: #827d96; font-size: .62rem; text-transform: uppercase; }
.kc-document-grid dd { margin: 3px 0 0; color: #fff; font-size: .78rem; overflow-wrap: anywhere; }

@media (max-width: 980px) {
  .kc-rule-grid,
  .kc-document-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 700px) {
  .kc-filter-bar-compact { grid-template-columns: 1fr; }
  .kc-research-warning { grid-template-columns: 1fr; }
  .kc-research-warning strong { white-space: normal; }
  .kc-order-card > header { display: grid; }
  .kc-source-badges { justify-content: start; }
  .kc-dominance-track li { grid-template-columns: 36px minmax(0,1fr); }
  .kc-dominance-track li div { grid-column: 2; justify-content: start; }
  .kc-timeline::before { left: 19px; }
  .kc-timeline-item { grid-template-columns: 1fr; gap: 8px; padding-left: 42px; }
  .kc-timeline-item::before { left: 13px; top: 25px; }
  .kc-rule-grid,
  .kc-document-grid { grid-template-columns: 1fr; }
}

/* Pass 3: market, pedigree, hider, billing, and admin workflows */
.kc-hider-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.kc-hider-card { padding:20px; border:1px solid rgba(143,99,224,.28); border-radius:16px; background:linear-gradient(145deg,rgba(16,11,42,.94),rgba(7,8,24,.96)); }
.kc-hider-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.kc-hider-card header span { color:var(--kc-cyan); font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.1em; }
.kc-hider-card h2 { margin:4px 0 0; color:#fff; font-size:1.55rem; }
.kc-hider-card > p { color:#bdb7d1; line-height:1.55; }
.kc-confidence { flex:0 0 auto; padding:5px 8px; border:1px solid rgba(151,106,255,.34); border-radius:999px; color:#d0c8e8; background:rgba(126,74,210,.12); font-size:.62rem; text-transform:uppercase; letter-spacing:.08em; }
.kc-confidence.proven { color:#b7ff8d; border-color:rgba(141,255,69,.35); }
.kc-confidence.supported { color:#9ceaff; border-color:rgba(69,221,255,.35); }
.kc-confidence.conflict { color:#ff9aad; border-color:rgba(255,93,135,.4); }
.kc-inline-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:16px 0; }
.kc-inline-meta div { min-width:0; padding:9px 10px; border:1px solid rgba(125,92,197,.2); border-radius:9px; background:rgba(4,5,20,.5); }
.kc-inline-meta dt { color:#807b95; font-size:.61rem; text-transform:uppercase; letter-spacing:.07em; }
.kc-inline-meta dd { margin:3px 0 0; color:#fff; font-size:.8rem; overflow-wrap:anywhere; }
.kc-proof-box { display:grid; gap:3px; padding:10px 12px; border:1px solid rgba(141,255,69,.28); border-radius:10px; background:rgba(82,160,41,.08); }
.kc-proof-box.supported { border-color:rgba(69,221,255,.28); background:rgba(35,129,160,.08); }
.kc-proof-box strong { color:#fff; }
.kc-proof-box span { color:#bcb7d1; }
.kc-candidate-list { margin-top:14px; border:1px solid rgba(132,94,210,.2); border-radius:10px; overflow:hidden; }
.kc-candidate-list summary { padding:10px 12px; color:var(--kc-cyan); cursor:pointer; font-weight:800; }
.kc-candidate-list ol { max-height:260px; overflow:auto; margin:0; padding:0 10px 10px; list-style:none; }
.kc-candidate-list li { display:grid; grid-template-columns:42px 1fr; gap:8px; padding:7px 8px; border-top:1px solid rgba(132,94,210,.14); }
.kc-candidate-list li span { color:#78728d; }
.kc-candidate-list li strong { color:#eee9fa; }
.kc-candidate-list small { display:block; padding:0 12px 10px; color:#8c869f; }
.kc-evidence-notes { display:grid; gap:6px; margin-top:12px; }
.kc-evidence-notes div { display:grid; grid-template-columns:96px 1fr; gap:8px; color:#aaa4be; font-size:.78rem; }
.kc-evidence-notes b { color:#d8d1ee; text-transform:capitalize; }

.kc-market-search { grid-template-columns:1.4fr repeat(5,minmax(120px,.65fr)) auto; }
.kc-listing-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.kc-listing-card { display:flex; flex-direction:column; min-height:320px; padding:18px; border:1px solid rgba(137,96,216,.25); border-radius:15px; background:linear-gradient(145deg,rgba(15,11,39,.94),rgba(6,7,22,.96)); }
.kc-listing-card > header { display:flex; justify-content:space-between; gap:12px; }
.kc-listing-card header span { color:var(--kc-cyan); font-size:.65rem; font-weight:900; text-transform:uppercase; }
.kc-listing-card h2 { margin:4px 0; color:#fff; font-size:1.15rem; }
.kc-listing-card header > strong { color:var(--kc-pink); white-space:nowrap; }
.kc-listing-traits { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:14px 0; }
.kc-listing-traits span { min-width:0; padding:8px; border-radius:8px; color:#c8c2da; background:rgba(4,5,20,.55); font-size:.75rem; overflow-wrap:anywhere; }
.kc-listing-traits b { display:block; color:#77718c; font-size:.58rem; text-transform:uppercase; }
.kc-listing-card > a { margin-top:auto; color:var(--kc-cyan); text-decoration:none; font-weight:800; font-size:.8rem; }
.kc-history-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.kc-history-list { display:grid; gap:6px; }
.kc-history-list div { display:flex; justify-content:space-between; gap:12px; padding:10px; border-radius:8px; background:rgba(4,5,20,.55); }
.kc-history-list span { color:#a8a2ba; }
.kc-history-list strong { color:#fff; }
.kc-upgrade-panel { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px; border:1px solid rgba(255,78,184,.3); border-radius:16px; background:linear-gradient(90deg,rgba(255,78,184,.09),rgba(105,70,220,.08)); }
.kc-upgrade-panel h3 { margin:0 0 5px; color:#fff; }
.kc-upgrade-panel p { margin:0; color:#bdb7d1; }

.kc-upload-form { display:grid; gap:14px; margin-top:16px; }
.kc-upload-form label { display:grid; gap:7px; color:#fff; font-weight:800; }
.kc-upload-form input[type=file] { padding:12px; border:1px dashed rgba(106,218,255,.4); border-radius:10px; color:#bcb7d1; background:rgba(4,5,20,.58); }
.kc-upload-form p,.kc-muted-copy { color:#9e98b2; line-height:1.55; }
.kc-step-list { display:grid; gap:10px; padding-left:20px; color:#c1bbd2; }
.kc-pedigree-list { display:grid; gap:8px; }
.kc-pedigree-list article { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 16px; border:1px solid rgba(138,97,216,.24); border-radius:12px; background:rgba(8,8,27,.82); }
.kc-pedigree-list span { color:var(--kc-cyan); font-size:.62rem; font-weight:900; }
.kc-pedigree-list h3 { margin:3px 0; color:#fff; }
.kc-pedigree-list p { margin:0; color:#918ba4; }
.kc-pedigree-review-layout { display:grid; grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr); gap:20px; align-items:start; }
.kc-pedigree-image-panel { position:sticky; top:136px; padding:10px; border:1px solid rgba(145,99,224,.3); border-radius:16px; background:rgba(6,7,23,.9); }
.kc-pedigree-image-panel img { display:block; width:100%; max-height:78vh; object-fit:contain; border-radius:10px; background:#080913; }
.kc-pedigree-image-panel p { margin:10px 4px 2px; color:#9f99b3; font-size:.78rem; }
.kc-node-editor { display:grid; gap:12px; }
.kc-node-card { padding:14px; border:1px solid rgba(140,99,220,.25); border-radius:13px; background:rgba(5,6,22,.58); }
.kc-node-card > header { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:12px; }
.kc-node-card > header div { display:flex; align-items:center; gap:8px; }
.kc-node-card > header span { color:var(--kc-cyan); font-size:.65rem; font-weight:900; text-transform:uppercase; }
.kc-node-card > header input { width:160px; }
.kc-node-card > header button { border:0; color:#ff9bbf; background:transparent; font-size:1.3rem; cursor:pointer; }
.kc-node-core { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.kc-node-core .wide { grid-column:span 2; }
.kc-node-core label,.kc-node-traits label,.kc-link-row label { display:grid; gap:4px; color:#aaa4bc; font-size:.7rem; }
.kc-node-core input,.kc-node-core select,.kc-node-traits input,.kc-link-row select,.kc-admin-source-card input,.kc-admin-source-card select,.kc-payment-review-list input { width:100%; padding:9px 10px; border:1px solid rgba(132,95,205,.3); border-radius:8px; color:#fff; background:rgba(3,4,17,.72); }
.kc-node-core .kc-check { display:flex; align-items:center; gap:7px; padding-top:22px; }
.kc-node-core .kc-check input { width:auto; }
.kc-node-traits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:10px; }
.kc-node-traits label { padding:8px; border-radius:8px; background:rgba(4,5,20,.55); }
.kc-node-traits label > span { color:#fff; font-weight:800; }
.kc-node-traits small { display:flex; gap:5px; align-items:center; color:#817b93; }
.kc-node-traits small input { width:auto; }
.kc-links-heading { margin-top:20px; }
.kc-link-editor { display:grid; gap:8px; }
.kc-link-row { display:grid; grid-template-columns:1fr 1fr .7fr auto; gap:8px; align-items:end; padding:10px; border:1px solid rgba(132,95,205,.2); border-radius:10px; background:rgba(4,5,20,.55); }
.kc-link-row button,.kc-terminal-list button,.kc-payment-review-list button { padding:9px 11px; border:1px solid rgba(255,93,135,.3); border-radius:8px; color:#ff9bb8; background:rgba(255,93,135,.06); cursor:pointer; }
.kc-confirm-import { margin-top:16px; padding-top:16px; border-top:1px solid rgba(132,95,205,.2); }
.kc-cat-actions { display:grid; gap:8px; margin:16px 0; }

.kc-admin-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid rgba(137,96,216,.25); border-radius:14px; overflow:hidden; }
.kc-admin-kpis div { padding:14px 16px; border-right:1px solid rgba(137,96,216,.2); }
.kc-admin-kpis div:last-child { border-right:0; }
.kc-admin-kpis span { display:block; color:#817b93; font-size:.64rem; text-transform:uppercase; }
.kc-admin-kpis strong { display:block; margin-top:3px; color:#fff; font-size:1.5rem; }
.kc-admin-source-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.kc-admin-source-card { display:grid; gap:10px; padding:16px; border:1px solid rgba(139,98,218,.25); border-radius:14px; background:linear-gradient(145deg,rgba(15,11,39,.94),rgba(6,7,22,.96)); }
.kc-admin-source-card header { display:flex; justify-content:space-between; gap:10px; }
.kc-admin-source-card header span { color:var(--kc-cyan); font-size:.62rem; text-transform:uppercase; }
.kc-admin-source-card h3 { margin:3px 0; color:#fff; }
.kc-admin-source-card header b { padding:4px 7px; border-radius:999px; font-size:.6rem; text-transform:uppercase; }
.kc-admin-source-card header b.on { color:#b4ff8c; background:rgba(141,255,69,.09); }
.kc-admin-source-card header b.off { color:#ff9dbb; background:rgba(255,93,135,.08); }
.kc-admin-source-card p { margin:0; color:#a9a3ba; font-size:.8rem; line-height:1.45; }
.kc-admin-source-card label { display:grid; gap:4px; color:#aaa4bc; font-size:.7rem; }
.kc-admin-source-card .kc-check { display:flex; align-items:center; gap:7px; }
.kc-admin-source-card .kc-check input { width:auto; }
.kc-two-fields { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.kc-admin-source-card dl { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin:0; }
.kc-admin-source-card dl div { padding:7px; border-radius:7px; background:rgba(4,5,20,.55); }
.kc-admin-source-card dt { color:#77718a; font-size:.58rem; text-transform:uppercase; }
.kc-admin-source-card dd { margin:2px 0 0; color:#fff; font-size:.75rem; }
.kc-admin-two-col { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.kc-admin-table,.kc-terminal-list,.kc-payment-review-list { display:grid; gap:7px; }
.kc-admin-table > div,.kc-terminal-list article,.kc-payment-review-list article { display:grid; grid-template-columns:1fr auto; gap:4px 12px; padding:10px; border-radius:9px; background:rgba(4,5,20,.55); }
.kc-admin-table span,.kc-terminal-list span,.kc-payment-review-list span { color:var(--kc-cyan); font-size:.62rem; text-transform:uppercase; }
.kc-admin-table strong,.kc-terminal-list strong,.kc-payment-review-list strong { color:#fff; }
.kc-admin-table small,.kc-terminal-list small,.kc-payment-review-list small { grid-column:1/-1; color:#8f899f; }
.kc-payment-review-list p { grid-column:1/-1; margin:4px 0; color:#ffb4c9; font-size:.75rem; }
.kc-payment-review-list form { display:grid; grid-template-columns:1fr auto; gap:6px; grid-column:1/-1; }

@media (max-width:1180px) {
  .kc-market-search { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .kc-listing-grid,.kc-admin-source-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .kc-node-core { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:920px) {
  .kc-hider-grid,.kc-history-grid,.kc-pedigree-review-layout,.kc-admin-two-col { grid-template-columns:1fr; }
  .kc-pedigree-image-panel { position:static; }
  .kc-admin-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .kc-admin-kpis div:nth-child(2) { border-right:0; }
  .kc-admin-kpis div:nth-child(-n+2) { border-bottom:1px solid rgba(137,96,216,.2); }
  .kc-upgrade-panel { align-items:flex-start; flex-direction:column; }
}
@media (max-width:700px) {
  .kc-market-search,.kc-listing-grid,.kc-admin-source-grid,.kc-node-core,.kc-node-traits { grid-template-columns:1fr; }
  .kc-node-core .wide { grid-column:auto; }
  .kc-link-row { grid-template-columns:1fr; }
  .kc-pedigree-list article { align-items:flex-start; flex-direction:column; }
  .kc-inline-meta { grid-template-columns:1fr; }
  .kc-evidence-notes div { grid-template-columns:1fr; }
  .kc-admin-kpis { grid-template-columns:1fr; }
  .kc-admin-kpis div { border-right:0; border-bottom:1px solid rgba(137,96,216,.2); }
  .kc-admin-kpis div:last-child { border-bottom:0; }
}
.kc-device-list article.device { grid-template-columns:minmax(0,1fr) auto auto; }
.kc-inline-danger { padding:6px 8px; border:1px solid rgba(255,93,135,.3); border-radius:8px; color:#ff9bb8; background:rgba(255,93,135,.06); cursor:pointer; }

/* Pass 4: compact reusable tool pages and a tighter trait-counter workspace */
.kc-tool-page .page-hero {
  padding: 24px 0 20px;
}
.kc-tool-page .page-hero-inner {
  max-width: 1180px;
  text-align: center;
}
.kc-tool-page .page-hero h1 {
  max-width: 1020px;
  margin: 4px auto 8px;
  font-size: clamp(2.35rem, 4.8vw, 4.9rem);
  line-height: .93;
}
.kc-tool-page .page-hero p:last-child {
  max-width: 820px;
  margin: 0 auto;
  line-height: 1.5;
}
.kc-tool-page .kc-section {
  padding: 24px 0;
}
.kc-tool-page .kc-section-heading {
  margin-bottom: 16px;
}
.kc-compact-hero {
  padding: 20px 0;
  border-bottom: 1px solid rgba(133,94,213,.22);
  background:
    radial-gradient(circle at 20% 0%, rgba(185,75,255,.16), transparent 26rem),
    linear-gradient(180deg, rgba(9,8,30,.82), rgba(7,7,22,.34));
}
.kc-compact-hero-inner {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr);
  gap: 24px;
  align-items: end;
}
.kc-compact-hero h1 {
  margin: 5px 0 0;
  color: #fff;
  font-size: clamp(2.25rem,4.5vw,4.5rem);
  line-height: .94;
  letter-spacing: -.05em;
}
.kc-compact-hero h1 em {
  font-style: normal;
  color: transparent;
  background: linear-gradient(90deg,#ff765d,#ff4eb8 38%,#bb72ff 68%,#45ddff);
  background-clip: text;
  -webkit-background-clip: text;
}
.kc-compact-hero-inner > p {
  margin: 0;
  color: var(--kc-muted);
  line-height: 1.5;
}
.kc-counter-shell {
  max-width: 1260px;
}
.kc-counter-page .kc-section-tight {
  padding-top: 20px;
  padding-bottom: 24px;
}
.kc-counter-page .kc-counter-layout {
  grid-template-columns: minmax(0,1.03fr) minmax(420px,.97fr);
  gap: 12px;
  align-items: start;
}
.kc-counter-page .kc-input-panel,
.kc-counter-page .kc-result-panel {
  padding: 16px;
  border-radius: 14px;
  box-shadow: 0 12px 34px rgba(0,0,0,.2);
}
.kc-counter-page .kc-panel-heading h2 {
  font-size: 1.25rem;
}
.kc-counter-page .kc-input-panel textarea {
  min-height: 238px;
  margin-top: 12px;
  padding: 12px;
}
.kc-counter-page .kc-actions {
  margin-top: 12px;
}
.kc-counter-page .kc-result-panel {
  align-items: stretch;
  text-align: left;
}
.kc-result-summary {
  display: grid;
  grid-template-columns: 104px minmax(0,1fr);
  gap: 14px;
  align-items: center;
  margin-bottom: 10px;
}
.kc-counter-page .kc-score-ring {
  width: 104px;
  height: 104px;
}
.kc-counter-page .kc-score-ring strong {
  font-size: 1.9rem;
}
.kc-counter-page .kc-score-ring span {
  font-size: .58rem;
}
.kc-result-copy .kc-score-bar {
  margin: 0 0 9px;
}
.kc-result-copy p {
  margin: 0;
  color: #aaa4bd;
  line-height: 1.45;
}
.kc-counter-page .kc-counter-traits {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 5px;
}
.kc-counter-page .kc-counter-traits > div {
  grid-template-columns: 92px minmax(0,1fr) auto;
  gap: 7px;
  min-height: 39px;
  padding: 7px 8px;
}
.kc-counter-page .kc-counter-traits span {
  font-size: .69rem;
}
.kc-counter-page .kc-counter-traits strong {
  font-size: .77rem;
}
.kc-counter-page .kc-counter-traits b {
  font-size: .56rem;
}
.kc-counter-rules {
  display: grid;
  grid-template-columns: 220px minmax(0,1fr);
  gap: 12px;
  align-items: center;
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(132,92,214,.2);
  border-radius: 13px;
  background: rgba(8,7,25,.66);
}
.kc-counter-rules h2 {
  margin: 4px 0 0;
  color: #fff;
  font-size: 1.2rem;
}
.kc-rule-grid.compact {
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 5px;
}
.kc-rule-grid.compact div {
  padding: 8px 9px;
  border-radius: 8px;
}
.kc-rule-grid.compact span {
  font-size: .57rem;
}
.kc-rule-grid.compact strong {
  margin-top: 2px;
  font-size: .72rem;
}
@media (max-width: 980px) {
  .kc-compact-hero-inner,
  .kc-counter-page .kc-counter-layout {
    grid-template-columns: 1fr;
  }
  .kc-counter-rules {
    grid-template-columns: 1fr;
  }
  .kc-counter-page .kc-counter-traits {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 700px) {
  .kc-tool-page .page-hero,
  .kc-compact-hero {
    padding: 18px 0 16px;
  }
  .kc-compact-hero-inner {
    gap: 10px;
  }
  .kc-compact-hero h1 {
    font-size: clamp(2rem,11vw,3.4rem);
  }
  .kc-counter-page .kc-section-tight {
    padding-top: 12px;
  }
  .kc-result-summary {
    grid-template-columns: 88px minmax(0,1fr);
  }
  .kc-counter-page .kc-score-ring {
    width: 88px;
    height: 88px;
  }
  .kc-counter-page .kc-counter-traits,
  .kc-rule-grid.compact {
    grid-template-columns: 1fr;
  }
  .kc-counter-page .kc-counter-traits > div {
    grid-template-columns: 86px minmax(0,1fr) auto;
  }
}
@media (max-width: 700px) {
  .kc-counter-page .kc-counter-traits,
  .kc-rule-grid.compact {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .kc-counter-page .kc-counter-traits > div {
    grid-template-columns: minmax(0,1fr) auto;
    align-content: center;
    min-height: 58px;
  }
  .kc-counter-page .kc-counter-traits strong {
    grid-column: 1/-1;
    grid-row: 2;
  }
  .kc-counter-page .kc-counter-traits b {
    grid-column: 2;
    grid-row: 1;
  }
}
@media (max-width: 340px) {
  .kc-counter-page .kc-counter-traits,
  .kc-rule-grid.compact {
    grid-template-columns: 1fr;
  }
}

.kc-record-type-field{display:grid;gap:6px;margin:12px 0;color:#d9d4e8;font-weight:800}.kc-record-type-field select{min-height:42px;padding:9px 10px;border:1px solid rgba(142,96,221,.34);border-radius:9px;color:#fff;background:#08091c}.kc-record-type-field select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(69,221,255,.1);outline:0}

/* v2.2 wildcard-safe trait counter */
.kc-counter-guidance {
  display: grid;
  gap: 3px;
  margin-top: 8px;
  padding: 8px 10px;
  border: 1px solid rgba(69,221,255,.22);
  border-radius: 9px;
  color: #aaa4bd;
  background: rgba(7,14,31,.68);
  font-size: .76rem;
  line-height: 1.4;
}
.kc-counter-guidance strong { color: #f2edff; }
.kc-counter-guidance a { color: #62e5ff; font-weight: 800; }
.kc-counter-guidance code { color: #ff78c7; font-weight: 900; }
.kc-score-bar { position: relative; }
.kc-score-bar span[data-counter-range] {
  position: absolute;
  inset: 0 auto 0 0;
  width: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(255,78,184,.24), rgba(185,108,255,.32), rgba(69,221,255,.28));
  box-shadow: 0 0 10px rgba(185,108,255,.22);
  transition: width .35s ease;
}
.kc-score-bar i[data-counter-bar] { position: relative; z-index: 1; }
.kc-counter-traits > div.unresolved {
  border-color: rgba(255,120,199,.48);
  background: linear-gradient(135deg, rgba(46,12,41,.7), rgba(18,12,43,.7));
}
.kc-counter-traits > div.unresolved b { color: #ff78c7; }
.kc-counter-traits > div.missing { opacity: .78; }
.kc-counter-traits > div.missing b { color: #8e899e; }
@media (prefers-reduced-motion: reduce) {
  .kc-score-bar span[data-counter-range] { transition: none; }
}

/* v6: homepage-aligned layout rhythm. Every primary gap is based on 8px. */
.kittycats-page {
  --kc-section-y: var(--kc-s4);
  --kc-card-radius: var(--kc-s2);
}
.kittycats-page .page-hero { padding: var(--kc-s4) 0 var(--kc-s3); }
.kittycats-page .page-hero h1 {
  margin: var(--kc-s1) auto var(--kc-s2);
  font-size: clamp(2.75rem, 4.8vw, 5.25rem);
}
.kittycats-page .content-section,
.kc-section { padding: var(--kc-section-y) 0; }
.kc-section-tight { padding-top: var(--kc-s3); }
.kc-hero { padding: var(--kc-s4) 0; }
.kc-hero-grid,
.kc-evidence-grid { gap: var(--kc-s4); }
.kc-section-heading { gap: var(--kc-s3); margin-bottom: var(--kc-s3); }
.kc-tool-grid,
.kc-plan-grid,
.kc-trait-grid,
.kc-cat-grid,
.kc-market-grid,
.kc-method-grid,
.kc-admin-source-grid,
.kc-admin-two-col { gap: var(--kc-s2); }
.kc-tool-card,
.kc-plan-card,
.kc-trait-card,
.kc-cat-card,
.kc-method-grid > div,
.kc-account-panel,
.kc-input-panel,
.kc-result-panel,
.kc-preview-panel,
.kc-market-panel,
.kc-empty-state { border-radius: var(--kc-card-radius); }
.kc-tool-card,
.kc-plan-card,
.kc-account-panel,
.kc-input-panel,
.kc-result-panel,
.kc-preview-panel,
.kc-market-panel,
.kc-empty-state { padding: var(--kc-s3); }
.kc-filter-bar { gap: var(--kc-s1); padding: var(--kc-s2); border-radius: var(--kc-card-radius); }
.kc-filter-bar :is(input, select) { min-height: 48px; padding: var(--kc-s1) var(--kc-s2); }
.kc-inline-stats div,
.kc-cattery-kpis div,
.kc-market-kpis div,
.kc-evidence-list div,
.kc-rule-grid div { padding: var(--kc-s2); }
.kc-member-hero { padding: var(--kc-s4) 0 var(--kc-s3); }
.kc-member-head,
.kc-cat-detail-head { gap: var(--kc-s3); }
.kc-member-head h1,
.kc-cat-detail-head h1 { margin: var(--kc-s1) 0; }
.kc-counter-layout,
.kc-import-layout,
.kc-account-grid,
.kc-cat-detail-grid,
.kc-pedigree-review-layout { gap: var(--kc-s2); }
.kc-market-policy { gap: var(--kc-s2); margin-top: var(--kc-s2); padding: var(--kc-s2); border-radius: var(--kc-card-radius); }
.kc-actions { gap: var(--kc-s1); margin-top: var(--kc-s3); }
.kc-actions .button { min-height: 48px; }
.kc-trait-card {
  min-height: 0;
  padding: var(--kc-s2);
}
.kc-trait-card h2 { margin: var(--kc-s1) 0; font-size: 1.12rem; }
.kc-trait-card p { flex: 0 1 auto; font-size: .8rem; line-height: 1.5; }
.kc-trait-card dl { gap: var(--kc-s2); margin-top: var(--kc-s2); }

@media (max-width: 700px) {
  .kittycats-page { --kc-section-y: var(--kc-s3); }
  .kittycats-page .page-hero { padding: var(--kc-s3) 0 var(--kc-s2); }
  .kittycats-page .page-hero h1 { font-size: clamp(2.25rem, 12vw, 3.75rem); }
  .kc-hero { padding: var(--kc-s3) 0; }
  .kc-hero-grid,
  .kc-evidence-grid,
  .kc-member-head,
  .kc-cat-detail-head { gap: var(--kc-s2); }
  .kc-tool-card,
  .kc-plan-card,
  .kc-account-panel,
  .kc-input-panel,
  .kc-result-panel,
  .kc-preview-panel,
  .kc-market-panel,
  .kc-empty-state { padding: var(--kc-s2); }
}

/* v8: one compact card language across every KittyCats workspace. */
:is(
  .kc-tool-card,
  .kc-plan-card,
  .kc-trait-card,
  .kc-cat-card,
  .kc-order-card,
  .kc-timeline-item,
  .kc-rule-grid article,
  .kc-document-grid article,
  .kc-hider-card,
  .kc-listing-card,
  .kc-node-card,
  .kc-admin-source-card,
  .kc-account-panel,
  .kc-input-panel,
  .kc-result-panel,
  .kc-preview-panel,
  .kc-market-panel,
  .kc-method-grid > div,
  .kc-empty-state,
  .kc-pedigree-list article,
  .kc-tier-card,
  .kc-upgrade-panel,
  .kc-pedigree-image-panel
) {
  border: 1px solid var(--kc-line);
  border-radius: var(--kc-card-radius);
  background: linear-gradient(145deg, rgba(16, 11, 40, .94), rgba(8, 8, 26, .94));
  box-shadow: inset 0 1px rgba(255, 255, 255, .025);
}

:is(
  .kc-tool-card,
  .kc-plan-card,
  .kc-trait-card,
  .kc-order-card,
  .kc-timeline-item,
  .kc-rule-grid article,
  .kc-document-grid article,
  .kc-hider-card,
  .kc-listing-card,
  .kc-node-card,
  .kc-admin-source-card,
  .kc-account-panel,
  .kc-input-panel,
  .kc-result-panel,
  .kc-preview-panel,
  .kc-market-panel,
  .kc-method-grid > div,
  .kc-empty-state,
  .kc-pedigree-list article,
  .kc-tier-card,
  .kc-upgrade-panel
) { padding: var(--kc-s2); }

.kc-tool-card,
.kc-plan-card,
.kc-listing-card,
.kc-preview-panel { min-height: 0; }
.kc-tool-card h3,
.kc-plan-card h3,
.kc-listing-card h2,
.kc-order-card h2,
.kc-hider-card h2,
.kc-rule-grid h3,
.kc-document-grid h3,
.kc-method-grid h3,
.kc-account-panel h2,
.kc-market-panel h2 { margin: var(--kc-s1) 0; }
.kc-tool-card p,
.kc-plan-card p,
.kc-listing-card p,
.kc-rule-grid p,
.kc-document-grid p,
.kc-method-grid p { margin: 0; }
.kc-tool-card b,
.kc-plan-card .button { margin-top: var(--kc-s2); }
.kc-plan-card ul { margin-bottom: var(--kc-s2); }
.kc-order-list,
.kc-timeline,
.kc-pedigree-list,
.kc-device-list,
.kc-payment-list,
.kc-history-list,
.kc-admin-table,
.kc-terminal-list,
.kc-payment-review-list { gap: var(--kc-s1); }
.kc-order-list { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
.kc-timeline-item { grid-template-columns: 152px minmax(0, 1fr); gap: var(--kc-s3); }
.kc-timeline::before { left: 168px; }
.kc-timeline-item::before { left: 162px; top: 24px; }
.kc-listing-traits { gap: var(--kc-s1); margin: var(--kc-s2) 0; }
.kc-listing-traits span { padding: var(--kc-s1); }
.kc-pedigree-list article { gap: var(--kc-s2); }
.kc-upgrade-panel { gap: var(--kc-s2); }

@media (min-width: 1500px) {
  .kc-listing-grid,
  .kc-document-grid,
  .kc-admin-source-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .kc-timeline-item { grid-template-columns: 1fr; gap: var(--kc-s1); }
  .kc-timeline::before,
  .kc-timeline-item::before { display: none; }
  .kc-upgrade-panel,
  .kc-pedigree-list article { align-items: stretch; }
}

@media (max-width: 1100px) {
  .kc-order-list { grid-template-columns: 1fr; }
}

/* v11: focused source/API alignment, compact market artwork, and explicit empty dominance records. */
.kc-sources-page .kc-section-heading {
  grid-template-columns: 1fr;
  max-width: 920px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
.kc-sources-page .kc-section-heading .eyebrow,
.kc-sources-page .kc-empty-state .eyebrow,
.kc-api-page .page-hero .eyebrow { justify-content: center; }
.kc-sources-page :is(.kc-rule-grid article, .kc-document-grid article, .kc-research-warning, .kc-empty-state),
.kc-api-page :is(.kc-api-card, .kc-api-note) { text-align: center; }
.kc-sources-page .kc-rule-grid article > span,
.kc-api-page .kc-method { width: max-content; margin-right: auto; margin-left: auto; }
.kc-sources-page .kc-document-grid article > div:first-child { justify-content: center; }
.kc-sources-page .kc-document-grid dl { text-align: center; }
.kc-api-page .kc-api-card code { text-align: center; }

.kc-market-page .kc-empty-state.market {
  width: min(100%, 1040px);
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  gap: var(--kc-s3);
  align-items: center;
  margin-right: auto;
  margin-left: auto;
  padding: var(--kc-s2);
}
.kc-market-page .kc-empty-state.market > img {
  display: block;
  width: min(100%, 280px);
  height: 280px;
  max-height: none;
  margin: auto;
  object-fit: contain;
  object-position: center;
}
.kc-market-page .kc-empty-state.market h2 { font-size: clamp(1.8rem, 3vw, 2.65rem); }
.kc-market-page .kc-empty-state.market ul { margin-bottom: 0; }

.kc-order-card.is-empty { align-self: start; }
.kc-order-empty {
  display: grid;
  gap: var(--kc-s1);
  padding: var(--kc-s2);
  border: 1px dashed rgba(145, 99, 224, .3);
  border-radius: var(--kc-s1);
  color: var(--kc-muted);
  background: rgba(5, 6, 22, .5);
  text-align: center;
}
.kc-order-empty strong { color: var(--kc-cyan); }

@media (max-width: 900px) {
  .kc-market-page .kc-empty-state.market { grid-template-columns: 1fr; max-width: 680px; text-align: center; }
  .kc-market-page .kc-empty-state.market > img { width: min(100%, 220px); height: 240px; }
  .kc-market-page .kc-empty-state.market .eyebrow { justify-content: center; }
  .kc-market-page .kc-empty-state.market ul { display: inline-grid; max-width: 520px; text-align: left; }
}
.kc-public-pedigree-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.9fr) 210px;gap:24px;align-items:center;padding:24px;border:1px solid rgba(129,223,255,.2);border-radius:20px;background:linear-gradient(110deg,rgba(40,202,255,.08),rgba(120,67,201,.12),rgba(20,18,34,.94))}.kc-public-pedigree-panel h2{margin:.25rem 0 .6rem}.kc-public-pedigree-panel p{margin:0;color:#a9a5b7}.kc-public-pedigree-panel form{display:grid;gap:8px}.kc-public-pedigree-panel form>label{color:#e8e5f2;font-size:.72rem;font-weight:800}.kc-public-pedigree-panel form>div{display:flex;gap:8px}.kc-public-pedigree-panel input{min-width:0;width:100%;padding:12px 13px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#0d0b19;color:#fff}.kc-public-pedigree-panel small{color:#858196}.kc-scanner-status-link{display:grid;gap:4px;padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(8,7,22,.54)}.kc-scanner-status-link span{color:#9994aa;font-size:.65rem;text-transform:uppercase;letter-spacing:.1em}.kc-scanner-status-link strong{color:#8feaff;font-size:.76rem}.kc-public-target-list{display:grid;gap:10px}.kc-public-target-list article{display:grid;grid-template-columns:110px 1fr auto;gap:16px;align-items:center;padding:15px 17px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(23,20,36,.9)}.kc-public-target-list article>span{padding:5px 7px;border-radius:999px;background:#292537;color:#c5c0d3;text-align:center;font-size:.6rem;font-weight:900}.kc-public-target-list article>span.scanned{color:#75edb0;background:rgba(50,190,123,.12)}.kc-public-target-list article>span.private{color:#f0c46c;background:rgba(234,171,54,.12)}.kc-public-target-list article>span.failed{color:#ff8d9e;background:rgba(226,65,90,.13)}.kc-public-target-list h3{margin:0 0 3px;font-size:.88rem}.kc-public-target-list p{margin:0;color:#8e899c;font-size:.7rem;overflow-wrap:anywhere}.kc-public-target-list small{color:#827d91}.kc-flash-success,.kc-flash-error{margin:0 0 16px;padding:13px 16px;border-radius:12px}.kc-flash-success{border:1px solid rgba(96,238,167,.25);background:rgba(48,181,119,.1);color:#a8f8ce}.kc-flash-error{border:1px solid rgba(255,105,128,.24);background:rgba(211,54,78,.1);color:#ffb1bd}.kc-flash-error ul{margin:6px 0 0;padding-left:20px}@media(max-width:960px){.kc-public-pedigree-panel{grid-template-columns:1fr}.kc-scanner-status-link{max-width:280px}.kc-public-target-list article{grid-template-columns:100px 1fr}.kc-public-target-list article>small{grid-column:2}}@media(max-width:620px){.kc-public-pedigree-panel form>div{display:grid}.kc-public-target-list article{grid-template-columns:1fr}.kc-public-target-list article>span{justify-self:start}.kc-public-target-list article>small{grid-column:auto}}
.kc-admin-command{display:grid;gap:6px;margin-top:14px;padding:12px 14px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:#0d0b18}.kc-admin-command code{overflow:auto;color:#91e9ff;font-size:.68rem;white-space:nowrap}.kc-admin-command small{color:#858094}

/* FlaroCity KittyCats lifetime + workspace layout patch 2026-07-15 */
.kc-tier-card.is-lifetime {
  min-width: min(100%, 300px);
  border-color: rgba(143, 255, 105, .38);
  background: linear-gradient(145deg, rgba(28, 22, 57, .96), rgba(7, 20, 25, .96));
  box-shadow: inset 0 1px rgba(255,255,255,.04), 0 0 28px rgba(92,255,116,.08);
}
.kc-tier-card.is-lifetime strong {
  color: #9dff7f;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  line-height: 1.05;
  text-shadow: 0 0 16px rgba(141,255,105,.22);
}
.kc-tier-card.is-lifetime small { color: #d8f8d0; }
.kc-lifetime-panel { border-color: rgba(141,255,105,.3); }
.kc-lifetime-badge {
  display: grid;
  gap: 4px;
  margin: 18px 0;
  padding: 18px;
  border: 1px solid rgba(141,255,105,.3);
  border-radius: 14px;
  text-align: center;
  background: linear-gradient(135deg, rgba(88,216,70,.12), rgba(69,221,255,.07));
}
.kc-lifetime-badge strong { color: #9dff7f; font-size: 2rem; line-height: 1; }
.kc-lifetime-badge span { color: #d5d0e3; font-size: .8rem; }
.kc-cattery-page .kc-cattery-kpis .is-lifetime {
  background: linear-gradient(135deg, rgba(82,170,58,.12), rgba(69,221,255,.05));
}
.kc-cattery-page .kc-cattery-kpis .is-lifetime strong { color: #9dff7f; }

/* Keep the cattery workspace bounded and predictable on desktop and mobile. */
.kc-cattery-page .kc-section > .shell { display: block; min-width: 0; }
.kc-cattery-page .kc-cattery-kpis {
  width: 100%;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: stretch;
}
.kc-cattery-page .kc-cattery-kpis > div {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 3px;
}
.kc-cattery-page .kc-cattery-kpis :is(span,strong,small) {
  max-width: 100%;
  overflow-wrap: anywhere;
}
.kc-cattery-page .kc-filter-bar.cattery {
  width: 100%;
  grid-template-columns: minmax(240px, 1.5fr) minmax(170px, .75fr) minmax(150px, .65fr) auto;
  align-items: end;
}
.kc-cattery-page .kc-filter-bar.cattery > * { min-width: 0; }
.kc-cattery-page .kc-empty-state.cattery {
  width: 100%;
  grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr);
  align-items: center;
  overflow: hidden;
}
.kc-cattery-page .kc-empty-state.cattery > img {
  width: min(100%, 520px);
  height: clamp(250px, 30vw, 390px);
  margin-inline: auto;
  object-fit: contain;
}
.kc-cattery-page .kc-empty-state.cattery > div { min-width: 0; }
.kc-cattery-page .kc-empty-state.cattery .kc-actions { align-items: center; }

/* Repair the market-listings policy and filter area so text cannot spill or overlap. */
.kc-market-listings-page .kc-section > .shell { display: block; min-width: 0; }
.kc-market-listings-page .kc-market-policy {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-items: stretch;
  margin: 0 0 16px;
  padding: 0;
  border: 0;
  background: transparent;
}
.kc-market-listings-page .kc-market-policy > div {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 7px;
  padding: 16px 18px;
  border: 1px solid rgba(255,181,71,.25);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(35,22,10,.7), rgba(12,10,29,.88));
}
.kc-market-listings-page .kc-market-policy strong {
  display: block;
  color: var(--kc-gold);
  font-size: .78rem;
  line-height: 1.25;
}
.kc-market-listings-page .kc-market-policy span {
  display: block;
  min-width: 0;
  color: #c8c2d5;
  font-size: .82rem;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.kc-market-listings-page .kc-market-search {
  width: 100%;
  grid-template-columns: minmax(220px, 1.5fr) minmax(220px, 1.5fr) minmax(140px, .8fr) minmax(140px, .8fr);
  align-items: end;
}
.kc-market-listings-page .kc-market-search > * { min-width: 0; }
.kc-market-listings-page .kc-market-search label:first-child { grid-column: span 2; }
.kc-market-listings-page .kc-market-search .button {
  width: 100%;
  min-height: 48px;
}
.kc-market-listings-page .kc-empty-state.compact {
  width: min(100%, 860px);
  grid-template-columns: 1fr;
  margin: 18px auto 0;
  text-align: center;
}
.kc-market-listings-page .kc-listing-grid { margin-top: 18px; }

@media (max-width: 1100px) {
  .kc-cattery-page .kc-cattery-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .kc-cattery-page .kc-cattery-kpis > div:nth-child(3) { border-right: 0; }
  .kc-cattery-page .kc-cattery-kpis > div:nth-child(-n+3) { border-bottom: 1px solid rgba(133,94,214,.18); }
  .kc-cattery-page .kc-cattery-kpis > div:nth-child(4) { grid-column: span 1; }
  .kc-cattery-page .kc-cattery-kpis > div:last-child { grid-column: span 2; }
  .kc-market-listings-page .kc-market-search { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kc-market-listings-page .kc-market-search label:first-child { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
  .kc-market-listings-page .kc-market-policy { grid-template-columns: 1fr; }
  .kc-cattery-page .kc-empty-state.cattery { grid-template-columns: 1fr; text-align: center; }
  .kc-cattery-page .kc-empty-state.cattery .eyebrow { justify-content: center; }
  .kc-cattery-page .kc-empty-state.cattery .kc-actions { justify-content: center; }
}

@media (max-width: 700px) {
  .kc-tier-card.is-lifetime { width: 100%; min-width: 0; }
  .kc-cattery-page .kc-cattery-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kc-cattery-page .kc-cattery-kpis > div,
  .kc-cattery-page .kc-cattery-kpis > div:nth-child(3) { border-right: 1px solid rgba(133,94,214,.18); border-bottom: 1px solid rgba(133,94,214,.18); }
  .kc-cattery-page .kc-cattery-kpis > div:nth-child(2n) { border-right: 0; }
  .kc-cattery-page .kc-cattery-kpis > div:nth-child(4) { grid-column: auto; }
  .kc-cattery-page .kc-cattery-kpis > div:last-child { grid-column: 1 / -1; border-right: 0; border-bottom: 0; }
  .kc-cattery-page .kc-filter-bar.cattery,
  .kc-market-listings-page .kc-market-search { grid-template-columns: 1fr; }
  .kc-market-listings-page .kc-market-search label:first-child { grid-column: auto; }
  .kc-cattery-page .kc-empty-state.cattery > img { height: min(72vw, 300px); }
  .kc-cattery-page .kc-empty-state.cattery .kc-actions { display: grid; grid-template-columns: 1fr; }
  .kc-cattery-page .kc-empty-state.cattery .kc-actions .button { width: 100%; }
}

/* Update 26C-2C list density: detailed rows 5, large cards 6, compact cards 8. */
.kc-pagination{scroll-margin-top:170px}

/* Update 26C-2D: account-aware API page. */
.kc-api-hero{position:relative;padding:70px 0 40px;border-bottom:1px solid rgba(93,224,255,.15);background:radial-gradient(circle at 78% 20%,rgba(151,73,255,.22),transparent 28rem),linear-gradient(180deg,rgba(7,7,24,.98),rgba(8,8,26,.9))}.kc-api-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.55fr);align-items:center;gap:42px}.kc-api-hero h1{margin:8px 0 14px;font-size:clamp(3rem,6vw,6rem);line-height:.92;letter-spacing:-.055em}.kc-api-hero p:not(.eyebrow){max-width:720px;margin:0;color:var(--kc-muted);line-height:1.7}.kc-api-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.kc-api-account-state{display:grid;gap:10px;padding:24px;border:1px solid rgba(169,102,255,.34);border-radius:18px;background:linear-gradient(145deg,rgba(22,17,48,.95),rgba(8,9,25,.97));box-shadow:0 24px 58px rgba(0,0,0,.25)}.kc-api-account-state>span{color:var(--kc-cyan);font-size:.66rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.kc-api-account-state>strong{font-size:2rem}.kc-api-account-state>p{margin:0;color:var(--kc-muted);line-height:1.5}.kc-api-account-state dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 0}.kc-api-account-state dl div{display:grid;gap:4px;padding:12px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.025)}.kc-api-account-state dt{color:#858399;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.kc-api-account-state dd{margin:0;color:#fff;font-size:.78rem;font-weight:850}.kc-api-notice{display:grid;gap:5px;margin-bottom:18px;padding:16px 18px;border:1px solid rgba(71,220,255,.18);border-radius:14px;background:rgba(71,220,255,.045)}.kc-api-notice strong{color:#58e1ff}.kc-api-notice p{margin:0;color:var(--kc-muted)}.kc-method.web{background:rgba(71,220,255,.1);color:#63e5ff}.kc-api-page .kc-api-card{text-align:left}.kc-api-page .kc-api-note{text-align:left}
@media(max-width:900px){.kc-api-hero-grid{grid-template-columns:1fr}.kc-api-account-state dl{grid-template-columns:1fr}}

/* Update 26C-7: KittyCats API keys and downloadable payment station */
.kc-api-management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.kc-api-secret-panel{margin-bottom:16px;border-color:rgba(76,230,255,.42);box-shadow:0 0 34px rgba(76,230,255,.08)}.kc-api-secret-panel code,.kc-api-management-grid code{display:block;padding:13px 14px;overflow-wrap:anywhere;border:1px solid rgba(76,230,255,.24);border-radius:10px;background:rgba(5,8,25,.8);color:#74eaff;line-height:1.55}.kc-api-key-form{display:grid;gap:12px}.kc-api-key-form label{display:grid;gap:6px}.kc-api-key-form label span{font-size:.72rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.kc-api-key-form input{width:100%;padding:12px 13px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(5,7,22,.82);color:#fff}.kc-api-key-list{display:grid;gap:8px}.kc-api-key-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025)}.kc-api-key-list article div{display:grid;gap:3px;min-width:0}.kc-api-key-list article span{color:var(--kc-muted);font-size:.76rem;overflow-wrap:anywhere}.kc-api-key-list article b{color:#8c89a0;font-size:.72rem;text-transform:uppercase}.kc-api-key-list button{border:0;background:transparent;color:#ff85b9;font-weight:850;cursor:pointer}.kc-api-download-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}@media(max-width:900px){.kc-api-management-grid{grid-template-columns:1fr}}@media(max-width:560px){.kc-api-key-list article{align-items:flex-start;flex-direction:column}}

/* Internal checkpoint: Trait Counter Pro current-market pricing */
.kc-pro-price-panel {
  display: grid;
  gap: 12px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(76, 226, 255, .38);
  border-radius: 14px;
  background:
    radial-gradient(circle at 14% 0%, rgba(255, 78, 184, .12), transparent 42%),
    linear-gradient(145deg, rgba(14, 11, 42, .96), rgba(5, 15, 32, .96));
  box-shadow: inset 0 0 28px rgba(91, 56, 180, .12), 0 0 22px rgba(69, 221, 255, .09);
}
.kc-pro-price-panel[data-state="loading"] { animation: kc-pro-price-pulse 1.3s ease-in-out infinite alternate; }
.kc-pro-price-panel[data-state="ready"] { border-color: rgba(116, 255, 178, .54); box-shadow: inset 0 0 28px rgba(47, 211, 145, .1), 0 0 24px rgba(47, 211, 145, .14); }
.kc-pro-price-panel[data-state="limited"] { border-color: rgba(255, 181, 74, .5); }
.kc-pro-price-heading { display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.kc-pro-price-heading h2 { margin: 4px 0 0; color: #fff; font-size: 1.16rem; }
.kc-pro-price-heading > b {
  padding: 6px 9px;
  border: 1px solid rgba(255, 103, 194, .35);
  border-radius: 999px;
  color: #ff91d1;
  background: rgba(255, 70, 176, .08);
  font-size: .64rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.kc-pro-price-panel > p { margin: 0; color: #bcb5ce; line-height: 1.45; }
.kc-price-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.kc-price-stat-grid > div {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(138, 93, 219, .28);
  border-radius: 10px;
  text-align: center;
  background: rgba(4, 8, 25, .72);
}
.kc-price-stat-grid span, .kc-price-recommendation span { color: #8e89a2; font-size: .62rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.kc-price-stat-grid strong { color: #f4efff; font-size: 1.02rem; }
.kc-price-stat-grid small { color: #77718c; font-size: .65rem; }
.kc-price-recommendation {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(255, 82, 188, .4);
  border-radius: 12px;
  text-align: center;
  background: linear-gradient(135deg, rgba(45, 10, 50, .68), rgba(13, 20, 53, .76));
  box-shadow: inset 0 0 22px rgba(255, 71, 180, .07);
}
.kc-price-recommendation strong {
  color: transparent;
  background: linear-gradient(90deg, #ff83d4, #bd7dff 48%, #64e8ff);
  background-clip: text;
  -webkit-background-clip: text;
  font-size: clamp(1.65rem, 4vw, 2.35rem);
  line-height: 1;
}
.kc-price-recommendation small { color: #b8b1ca; }
.kc-price-meta { color: #77718d !important; font-size: .7rem; text-align: center; }
@keyframes kc-pro-price-pulse { from { box-shadow: 0 0 14px rgba(69,221,255,.08); } to { box-shadow: 0 0 28px rgba(255,78,184,.16); } }
@media (max-width: 520px) {
  .kc-pro-price-heading { align-items: flex-start; flex-direction: column; }
  .kc-price-stat-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .kc-pro-price-panel[data-state="loading"] { animation: none; } }
