/* ===== Справочник «Значения карт Таро» ===== */
.kc-crumbs{ font-size:12.5px; color:var(--ivory-dim, #b8b0a8); margin:18px 0 6px; }
.kc-crumbs a{ color:var(--gold-soft); text-decoration:none; }
.kc{ max-width:760px; margin:0 auto; }
.kc-top{ display:grid; grid-template-columns:220px 1fr; gap:28px; align-items:start; margin-top:14px; }
.kc-img{ width:100%; height:auto; border-radius:14px; border:2px solid var(--gold); box-shadow:0 0 40px rgba(201,162,75,.25); }
.kc-suit{ font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); }
.kc h1{ font-family:'Cormorant Garamond',serif; font-size:clamp(28px,4.4vw,40px); color:var(--gold-soft); line-height:1.1; margin:6px 0 6px; }
.kc-element{ font-size:14px; color:var(--ivory-dim, #b8b0a8); margin-bottom:12px; }
.kc-kw{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; font-size:13px; color:var(--ivory); margin-top:8px; }
.kc-kw b{ color:var(--gold-soft); font-weight:600; margin-right:2px; }
.kc-kw span{ border:1px solid rgba(201,162,75,.35); border-radius:999px; padding:3px 10px; background:rgba(201,162,75,.07); }
.kc-kw.rev span{ border-color:rgba(240,184,168,.35); background:rgba(240,184,168,.06); }
.kc-yn{ margin-top:14px; font-size:14px; color:var(--ivory); line-height:1.5; }
.kc-yn span{ color:var(--ivory-dim, #b8b0a8); }
.kc-yn b{ color:var(--gold-soft); }
.kc-ask{ display:inline-block; width:auto; margin-top:16px; padding:13px 24px; text-decoration:none; }
.kc-toc{ display:flex; flex-wrap:wrap; gap:8px; margin:26px 0 4px; }
.kc-toc a{ font-size:13px; color:var(--gold-soft); text-decoration:none; border:1px solid rgba(201,162,75,.3); border-radius:999px; padding:6px 13px; }
.kc-sec{ margin-top:26px; scroll-margin-top:90px; }
.kc-sec h2{ font-family:'Cormorant Garamond',serif; font-size:26px; color:var(--gold-soft); margin-bottom:8px; }
.kc-sec p{ font-size:15.5px; line-height:1.75; color:var(--ivory); margin-bottom:12px; }
.kc-advice{ padding:16px 18px; border-radius:14px; background:rgba(201,162,75,.08); border:1px solid rgba(201,162,75,.35); }
.kc-advice p{ font-size:16px; color:#fff; margin:0; }
.kc-cta{ max-width:760px; margin:36px auto 0; text-align:center; padding:24px 20px; border-radius:18px; border:1px solid rgba(201,162,75,.45); background:rgba(30,26,53,.55); }
.kc-cta h2{ font-family:'Cormorant Garamond',serif; font-size:26px; color:var(--gold-soft); margin-bottom:6px; }
.kc-cta p{ font-size:14.5px; color:var(--ivory-dim, #b8b0a8); }
.kc-cta-row{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin:14px 0 8px; }
.kc-cta-row .btn{ display:inline-block; width:auto; margin:0; padding:13px 26px; text-decoration:none; }
.kc-cta-row .tbtn-ghost{ display:inline-block; text-decoration:none; background:transparent; border:1px solid rgba(212,172,90,.5); color:var(--gold-soft); border-radius:12px; padding:13px 22px; font-weight:600; font-size:14px; }
.kc-cta-more a{ color:var(--gold-soft); }
.kc-related{ max-width:760px; margin:36px auto 10px; }
.kc-related h2{ font-family:'Cormorant Garamond',serif; font-size:24px; color:var(--gold-soft); text-align:center; margin-bottom:12px; }
.kc-grid, .kx-grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:12px; }
.kc-grid a, .kx-card{ display:flex; flex-direction:column; align-items:center; gap:6px; text-decoration:none; color:var(--ivory); font-size:12.5px; text-align:center; line-height:1.25; }
.kc-grid img, .kx-card img{ width:100%; height:auto; aspect-ratio:5/8.6; object-fit:cover; border-radius:8px; border:1.5px solid rgba(201,162,75,.55); background:#0a0812; transition:transform .15s, border-color .15s; }
.kc-grid a:hover img, .kx-card:hover img{ transform:translateY(-3px); border-color:var(--gold); }
.kc-pn{ display:flex; justify-content:space-between; gap:10px; margin-top:18px; font-size:13.5px; }
.kc-pn a{ color:var(--gold-soft); text-decoration:none; }
/* справочник */
.kx-hero{ padding-bottom:6px; }
.kx-tools{ max-width:640px; margin:18px auto 0; }
.kx-tools input{ width:100%; background:rgba(10,8,20,.7); border:1.5px solid rgba(212,172,90,.4); color:#fff; padding:13px 16px; border-radius:14px; font:15px 'Manrope',sans-serif; }
.kx-tools input:focus{ outline:none; border-color:#F0C75E; }
.kx-filter{ display:flex; gap:8px; justify-content:center; flex-wrap:wrap; margin-top:12px; }
.kx-filter button{ background:transparent; border:1px solid rgba(212,172,90,.3); color:var(--ivory); border-radius:999px; padding:7px 15px; font:13.5px 'Manrope',sans-serif; cursor:pointer; }
.kx-filter button.active{ color:#1a1508; background:linear-gradient(180deg,#f0d9a0,#d4ac5a); border-color:transparent; font-weight:700; }
.kx-group{ max-width:900px; margin:30px auto 0; }
.kx-group h2{ font-family:'Cormorant Garamond',serif; font-size:26px; color:var(--gold-soft); text-align:center; margin-bottom:2px; }
.kx-el{ text-align:center; font-size:13px; color:var(--ivory-dim, #b8b0a8); margin-bottom:14px; }
.kx-grid{ grid-template-columns:repeat(7,1fr); }
.kx-empty{ text-align:center; color:var(--ivory-dim, #b8b0a8); margin-top:24px; }
.kx-about p b{ color:var(--gold-soft); }
@media (max-width:640px){
  .kc-top{ grid-template-columns:1fr; gap:14px; text-align:center; }
  .kc-img{ width:150px; justify-self:center; }
  .kc-kw{ justify-content:center; }
  .kc-toc{ justify-content:center; }
  .kc-sec h2{ font-size:23px; }
  .kc-sec p{ font-size:15px; }
  .kc-grid{ grid-template-columns:repeat(3,1fr); }
  .kx-grid{ grid-template-columns:repeat(4,1fr); gap:10px; }
  .kx-card{ font-size:11px; }
  .kx-filter{ flex-wrap:nowrap; overflow-x:auto; justify-content:flex-start; margin:12px -12px 0; padding:0 12px 4px; scrollbar-width:none; }
  .kx-filter::-webkit-scrollbar{ display:none; }
  .kx-filter button{ flex:0 0 auto; }
}

/* ===== Арканы матрицы судьбы ===== */
.ka-top{ display:grid; grid-template-columns:120px 1fr; gap:24px; align-items:center; margin-top:14px; }
.ka-num{ width:120px; height:120px; border-radius:50%; display:grid; place-items:center; font-family:'Cormorant Garamond',serif; font-size:56px; font-weight:700;
  color:var(--gold-soft); border:2px solid var(--gold); background:radial-gradient(circle, rgba(201,162,75,.18), rgba(18,14,36,.6) 70%); box-shadow:0 0 36px rgba(201,162,75,.25); }
.ka-paid{ list-style:none; padding:0; margin:12px 0 4px; display:grid; gap:8px; }
.ka-paid li{ padding:10px 14px; border:1px solid rgba(201,162,75,.22); border-radius:12px; background:rgba(30,26,53,.4); font-size:14px; line-height:1.5; color:var(--ivory); }
.ka-paid li b{ display:block; color:var(--gold-soft); font-weight:600; margin-bottom:2px; }
.ka-paid li b::before{ content:'🔒 '; font-size:12px; }
.ka-teaser{ color:var(--ivory-dim, #b8b0a8); }
.ka-tarot{ margin-top:22px; font-size:14.5px; color:var(--ivory-dim, #b8b0a8); }
.ka-tarot a{ color:var(--gold-soft); }
.ka-list{ max-width:760px; margin:26px auto 0; display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.ka-item{ display:grid; grid-template-columns:46px 1fr; grid-template-rows:auto auto; column-gap:12px; align-items:center; text-decoration:none;
  padding:12px 14px; border:1px solid rgba(201,162,75,.25); border-radius:14px; background:rgba(30,26,53,.42); transition:border-color .15s; }
.ka-item:hover{ border-color:var(--gold); }
.ka-n{ grid-row:span 2; width:42px; height:42px; border-radius:50%; display:grid; place-items:center; border:1px solid var(--gold);
  font-family:'Cormorant Garamond',serif; font-size:20px; font-weight:700; color:var(--gold-soft); }
.ka-name{ font-family:'Cormorant Garamond',serif; font-size:19px; color:var(--gold-soft); line-height:1.1; }
.ka-kw{ font-size:12px; color:var(--ivory-dim, #b8b0a8); }
@media (max-width:640px){
  .ka-top{ grid-template-columns:1fr; gap:12px; text-align:center; }
  .ka-num{ justify-self:center; width:96px; height:96px; font-size:46px; }
  .ka-list{ grid-template-columns:1fr; gap:8px; }
}
