/* Страница консультанта: сайдбар + чат + панель расчёта карты */
.cshell{display:grid;grid-template-columns:340px 1fr;gap:26px;padding:34px 0 60px;align-items:start}
.cside{position:sticky;top:84px}
.cover-wrap{position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);
  box-shadow:0 24px 60px rgba(0,0,0,.5)}
.c-cover{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.cover-glow{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(120% 80% at 50% 0%,transparent 30%,color-mix(in srgb,var(--c1) 35%,transparent) 100%);
  mix-blend-mode:screen;opacity:.7}
.c-title{font-size:1.5rem;margin:18px 0 6px}
.c-sub{font-size:.76rem;letter-spacing:.2em;text-transform:uppercase;color:var(--c2);margin-bottom:12px}
.c-tagline{color:var(--muted);font-size:.95rem;margin:0 0 18px}
.c-features{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:9px}
.c-features li{position:relative;padding-left:24px;color:var(--muted);font-size:.92rem}
.c-features li::before{content:"✦";position:absolute;left:0;color:var(--c2);font-size:.8rem;top:.15em}
.c-note{font-size:.82rem;color:rgba(154,166,201,.75);border-top:1px solid var(--line);padding-top:14px}

.cmain{display:flex;flex-direction:column;gap:18px;min-width:0}

/* панель расчёта карты */
.hd-panel{padding:22px 24px;margin-bottom:4px}
.hd-head h2{font-size:1.15rem;margin-bottom:6px}
.hd-head p{color:var(--muted);font-size:.9rem;margin:0 0 16px}
.hd-form{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.hd-form label{display:flex;flex-direction:column;gap:6px;font-size:.78rem;color:var(--muted);
  letter-spacing:.06em;text-transform:uppercase}
.hd-form label.grow{flex:1;min-width:180px}
.hd-form input{padding:11px 13px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.05);
  color:var(--ink);font-size:.95rem;font-family:inherit}
.hd-form input:focus{outline:none;border-color:color-mix(in srgb,var(--c2) 70%,transparent)}
.hd-result{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}
.hd-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}
.hd-stat{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:14px;padding:11px 13px}
.hd-stat span{display:block;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.hd-stat b{font-size:1rem;font-family:"Unbounded",sans-serif}
.hd-graph{display:grid;place-items:center;gap:12px}
.hd-graph svg{width:min(320px,84%);height:auto}
.bg-center{transition:fill .4s,stroke .4s}
.bg-label{fill:rgba(255,255,255,.6);font-size:8.5px;font-family:Manrope,sans-serif;text-anchor:middle}
.bg-gate{fill:#fff;font-size:7px;font-family:Unbounded,sans-serif;text-anchor:middle}
.bg-channel{stroke-linecap:round}

/* чат */
.chat{display:flex;flex-direction:column;height:min(70vh,660px);overflow:hidden}
.chat-head{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.03);font-family:"Unbounded",sans-serif;font-size:.9rem}
.chat-dot{width:9px;height:9px;border-radius:50%;background:#34d399;box-shadow:0 0 12px #34d399}
.chat-status{margin-left:auto;font-family:Manrope,sans-serif;font-size:.78rem;color:var(--muted)}
.chat-log{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}
.bub{max-width:78%;padding:11px 15px;border-radius:16px;font-size:.94rem;white-space:pre-wrap;word-wrap:break-word}
.bub.bot{align-self:flex-start;background:rgba(255,255,255,.07);border:1px solid var(--line);
  border-bottom-left-radius:5px}
.bub.me{align-self:flex-end;background:linear-gradient(120deg,var(--c1),var(--c2));color:#fff;border-bottom-right-radius:5px}
.bub.err{align-self:flex-start;background:rgba(244,63,94,.14);border:1px solid rgba(244,63,94,.4)}
.bub .cursor{display:inline-block;width:7px;height:15px;background:var(--c2);vertical-align:-2px;
  animation:blink 1s steps(2) infinite}
@keyframes blink{50%{opacity:0}}
.chat-starters{display:flex;gap:8px;padding:0 18px 10px;flex-wrap:wrap}
.starter{padding:7px 13px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);
  color:var(--muted);font-size:.82rem;cursor:pointer;transition:all .2s}
.starter:hover{color:var(--ink);border-color:color-mix(in srgb,var(--c2) 60%,transparent);
  background:rgba(255,255,255,.09)}
.chat-input{display:flex;gap:10px;padding:14px 18px;border-top:1px solid var(--line)}
.chat-input input{flex:1;padding:12px 15px;border-radius:999px;border:1px solid var(--line);
  background:rgba(255,255,255,.05);color:var(--ink);font-size:.95rem;font-family:inherit}
.chat-input input:focus{outline:none;border-color:color-mix(in srgb,var(--c2) 70%,transparent)}
@media(max-width:900px){.cshell{grid-template-columns:1fr}.cside{position:static}}

/* ── режим владельца и новый диалог ── */
.chat-reset{margin-left:auto;background:transparent;border:1px solid var(--line);color:var(--muted);
  border-radius:999px;padding:5px 12px;font-family:Manrope,sans-serif;font-size:.76rem;cursor:pointer;
  transition:.2s}
.chat-reset:hover{color:#fff;border-color:rgba(154,166,201,.5);background:rgba(154,166,201,.08)}
.chat-head .chat-status{margin-left:0}
.c-owner{margin-top:10px}
.owner-link{background:transparent;border:0;color:rgba(154,166,201,.55);font-family:Manrope,sans-serif;
  font-size:.78rem;cursor:pointer;padding:0;text-decoration:underline dotted;margin-left:10px}
.owner-link:hover{color:#f5c14b}

.c-telegram{display:inline-block;margin-top:12px;font-size:.84rem;color:var(--c1,#22d3ee);
  text-decoration:none;border-bottom:1px dashed rgba(34,211,238,.45)}
.c-telegram:hover{border-bottom-style:solid}

.c-pay{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.c-pay .btn{padding:9px 14px;font-size:.82rem}
.c-pay-state{font-size:.78rem;color:var(--muted)}

/* ── воронка: счётчик, мягкое предложение, стена лимита ── */
.chat-meter{display:flex;align-items:center;gap:10px;padding:9px 18px;border-bottom:1px solid var(--line);
  font-size:.8rem;color:var(--muted)}
.meter-dots{display:inline-flex;gap:5px}
.meter-dots .dot{width:8px;height:8px;border-radius:50%;background:rgba(34,211,238,.35);
  box-shadow:0 0 8px rgba(34,211,238,.35);transition:.3s}
.meter-dots .dot.used{background:rgba(154,166,201,.22);box-shadow:none}
.upsell,.paywall{margin:14px 18px 6px;padding:16px 18px;border-radius:16px;
  background:rgba(16,20,34,.82);border:1px solid rgba(245,193,75,.28);
  box-shadow:0 14px 40px rgba(0,0,0,.45);display:grid;gap:10px}
.paywall{border-color:rgba(34,211,238,.3)}
.upsell b,.paywall b{font-family:"Unbounded",sans-serif;font-size:.95rem;color:#f5c14b}
.paywall b{color:#67e8f9}
.upsell-text span,.paywall span{display:block;font-size:.86rem;color:var(--muted);line-height:1.5;margin-top:4px}
.upsell-actions{display:flex;gap:8px;flex-wrap:wrap}
.upsell-actions .btn{padding:9px 14px;font-size:.82rem}

.c-benefit{margin:0 0 14px;padding:11px 13px;border-radius:12px;font-size:.84rem;line-height:1.5;
  color:#e8ecf8;background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.22)}

/* ── расклад таро ── */
.tarot-panel{margin-bottom:18px;padding:20px 22px}
.tarot-head h2{font-size:1.05rem;margin-bottom:6px}
.tarot-head p{font-size:.82rem;color:var(--muted);margin-bottom:14px}
.tarot-spreads{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.tarot-spread{text-align:left;padding:12px 14px;border-radius:12px;cursor:pointer;
  background:rgba(124,58,237,.10);border:1px solid rgba(167,139,250,.28);color:inherit;
  font-family:Manrope,sans-serif;transition:.2s}
.tarot-spread:hover{border-color:rgba(245,193,75,.5);background:rgba(124,58,237,.18)}
.tarot-spread b{display:block;font-size:.9rem;color:#e8ecf8}
.tarot-spread span{display:block;font-size:.76rem;color:var(--muted);margin-top:3px}

.tcard-fan{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:18px 0}
.tcard{width:104px;height:160px;position:relative;perspective:900px;border:0;background:none;
  cursor:pointer;padding:0}
.tcard-face{position:absolute;inset:0;border-radius:12px;overflow:hidden;backface-visibility:hidden;
  transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.tcard-back{background:linear-gradient(150deg,#1b1035,#0d0820 60%,#2a1350);
  border:1px solid rgba(245,193,75,.45);display:grid;place-items:center}
.tcard-sign{font-size:38px;color:rgba(245,193,75,.85);text-shadow:0 0 18px rgba(245,193,75,.6)}
.tcard-front{transform:rotateY(180deg);background:#0b1020;border:1px solid rgba(255,255,255,.14);
  display:flex;flex-direction:column}
.tcard-front img{width:100%;height:100%;object-fit:cover}
.tcard-front span{position:absolute;left:0;right:0;bottom:0;padding:4px 6px;font-size:.68rem;
  text-align:center;background:rgba(8,10,20,.82);color:#f5c14b}
.tcard.flipped .tcard-back{transform:rotateY(180deg)}
.tcard.flipped .tcard-front{transform:rotateY(360deg)}

.tarot-positions{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-bottom:14px}
.tpos{padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08)}
.tpos span{display:block;font-size:.7rem;color:var(--muted)}
.tpos b{display:block;font-size:.86rem;margin-top:2px;color:var(--ink)}
.tpos.filled b{color:#f5c14b}
.tarot-question{display:flex;gap:8px;flex-wrap:wrap}
.tarot-question input{flex:1;min-width:220px;padding:11px 13px;border-radius:11px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:var(--ink);
  font-family:Manrope,sans-serif;font-size:.88rem}
.tarot-question input:focus{outline:none;border-color:rgba(245,193,75,.5)}
button.btn[disabled]{opacity:.45;cursor:not-allowed}
.tarot-reset{margin-top:12px;font-size:.8rem;color:var(--muted);background:none;border:0;
  text-decoration:underline dotted;cursor:pointer}
.linklike{background:none;border:0;color:var(--c1,#67e8f9);cursor:pointer;font-family:inherit}

/* ── Книга перемен ── */
.iching-question{display:flex;gap:8px;flex-wrap:wrap}
.iching-question input{flex:1;min-width:220px;padding:11px 13px;border-radius:11px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:var(--ink);
  font-family:Manrope,sans-serif;font-size:.88rem}
.iching-question input:focus{outline:none;border-color:rgba(245,193,75,.5)}
.iching-board{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:18px}
.iching-lines{display:grid;gap:12px;min-width:250px}
.iline{height:16px;color:#f5c14b;opacity:0;transform:translateY(-14px) scaleX(.6);
  transform-origin:left center;transition:opacity .45s ease,transform .55s cubic-bezier(.2,.9,.25,1)}
.iline.dropped{opacity:1;transform:none}
.iline.dropped{opacity:1;transform:none}
.iline.empty{opacity:.22;color:rgba(154,166,201,.6);background:rgba(154,166,201,.12);
  border-radius:3px;height:6px;align-self:center}
.iching-meta{display:grid;gap:6px;font-size:.82rem;color:var(--muted)}
.iching-meta b{font-size:.98rem;color:#f5c14b;font-family:"Unbounded",sans-serif}

.c-disclaimer{margin:12px 0 0;padding:11px 13px;border-radius:12px;font-size:.76rem;line-height:1.5;
  color:rgba(154,166,201,.8);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07)}
