.ch{max-width:760px;margin-inline:auto}
.ch__log{display:flex;flex-direction:column;gap:16px}
.ch__hello{text-align:center;padding:8px 0}
.ch__title{font-size:var(--fs-h2)}
.ch__hello .note{margin:12px 0 0}
.ch__chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px;text-align:left}
@media (max-width:640px){.ch__chips{grid-template-columns:minmax(0,1fr)}}
.ch__chip{display:flex;flex-direction:column;gap:4px;min-height:76px;padding:16px 18px;
  border:1px solid var(--line);border-radius:var(--r);background:var(--paper);color:var(--ink);
  font:inherit;text-align:left;cursor:pointer;box-shadow:0 1px 2px rgba(27,42,58,.06);
  transition:border-color .2s var(--ease)}
.ch__chip b{font-weight:700;line-height:1.5}
.ch__chip span{font-size:var(--fs-note);color:var(--ink-2);line-height:1.5}
.ch__chip:hover{border-color:var(--cyan-d)}
.ch__chip--warm{background:var(--warm);border-color:var(--warm)}
.ch__chip--warm span{color:var(--ink)}
.ch__chip--warm:hover{background:#d9761a;border-color:#d9761a}

.ch__msg{max-width:88%;padding:14px 18px;border-radius:var(--r);line-height:1.75;overflow-wrap:anywhere}
.ch__msg p{margin:0}
.ch__msg p + p{margin-top:.6em}
.ch__msg--me{align-self:flex-end;background:var(--pale)}
.ch__msg--ai{align-self:flex-start;background:var(--paper);border:1px solid var(--line)}
.ch__who{display:block;font-size:var(--fs-note);color:var(--ink-2);margin-bottom:6px}
.ch__msg--wide{max-width:100%;width:100%}
.ch__no{font-family:var(--num);font-weight:700;color:var(--cyan-d);margin-right:.5em}

.ch__opts{display:flex;flex-direction:column;margin-top:14px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.ch__opt{min-height:48px;padding:12px 16px;border:0;border-top:1px solid var(--line);background:var(--paper);
  font:inherit;color:var(--ink);text-align:left;cursor:pointer}
.ch__opt:first-child{border-top:0}
.ch__opt:hover{background:var(--pale)}
.ch__opt[aria-pressed="true"]{background:var(--pale);font-weight:700}
.ch__opts--done .ch__opt{cursor:default}
.ch__opts--done .ch__opt:hover{background:var(--paper)}
.ch__opts--done .ch__opt[aria-pressed="true"]:hover{background:var(--pale)}

.ch__res h2{font-family:var(--num);font-size:40px;color:var(--cyan-d);font-variant-numeric:tabular-nums;margin:4px 0 12px}
.ch__res .btn-row{margin-top:16px}
.ch__acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}

.ch__price{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:10px 0;margin-top:8px;border-top:1px solid var(--line)}
.ch__price b{font-weight:700}
.ch__price span{font-family:var(--num);font-weight:700;font-variant-numeric:tabular-nums}
.ch__price small{flex-basis:100%;font-size:var(--fs-note);color:var(--ink-2)}
.ch__link{display:inline-block;margin-top:8px}
.ch__err{border-left:3px solid var(--warm)}
.ch__wait{color:var(--ink-2)}

.ch__form{margin-top:28px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
  box-shadow:0 8px 24px rgba(27,42,58,.08);padding:12px 12px 8px}
.ch__form:focus-within{border-color:var(--cyan-d)}
.ch__form textarea{display:block;width:100%;min-height:56px;border:0;padding:6px 6px;resize:none;
  font:inherit;color:var(--ink);background:transparent;line-height:1.7}
.ch__form textarea:focus{outline:none}
.ch__bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:4px}
.ch__clear{min-height:44px;padding:0 6px;border:0;background:none;color:var(--cyan-d);font:inherit;font-size:14px;
  text-decoration:underline;text-underline-offset:.2em;cursor:pointer}
.ch__send{min-height:44px;padding:8px 22px}
.ch__fine{margin:12px 0 0;text-align:center}
.ch__ts{display:flex;justify-content:center;margin-top:12px}
.ch__ts[hidden]{display:none}

.ch__apply .fm{display:grid;gap:14px;margin-top:12px}
.ch__apply label{display:block;font-weight:700;font-size:15px;margin-bottom:6px}
.ch__apply .note{margin:0}

.ch__opt--other{color:var(--ink-2)}
.ch__opt--hint{box-shadow:inset 3px 0 0 var(--cyan-d);font-weight:700}
.ch__other{display:grid;gap:8px;margin-top:12px}
.ch__other label{font-weight:700;font-size:15px}
.ch__other textarea{width:100%;font:inherit;line-height:1.7;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);color:var(--ink)}
.ch__other .btn-row{margin:0}
.ch__other .note{margin:0}

.ch__next{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px}
.ch__next [hidden]{display:none}

.ch__draft{display:block;width:100%;margin-top:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r);
  background:var(--pale);color:var(--ink);font:inherit;font-size:15px;line-height:1.7;resize:none}
.ch__line .ch__acts{margin-top:12px}
.ch__line .note{margin:10px 0 0}
