/* Chinese Word Counter — tool styles. Scoped to .ftb-tool-cwc, every value a
   token (§4.2). Inputs, buttons, messages and tables come from core.css. Kept
   small: core.css and style.css already transfer about 11,000 of the
   12,288-byte page budget (§10). */

.ftb-tool-cwc textarea{min-height:220px;font-family:var(--ftb-font);font-size:var(--ftb-text-base);line-height:1.7}

/* Stat tiles; the two leads (字数, 词数) are what the page is for. */
.ftb-tool-cwc .ftb-cwc-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ftb-space-3);
  margin:var(--ftb-space-5) 0}
@media (min-width:480px){.ftb-tool-cwc .ftb-cwc-stats{grid-template-columns:repeat(4,1fr)}}
.ftb-tool-cwc .ftb-cwc-stat{display:flex;flex-direction:column;justify-content:center;gap:var(--ftb-space-1);
  min-height:84px;padding:var(--ftb-space-4) var(--ftb-space-3);text-align:center;
  background:var(--ftb-surface);border:1px solid var(--ftb-border);border-radius:var(--ftb-radius)}
.ftb-tool-cwc .ftb-cwc-num{font-size:var(--ftb-text-xl);font-weight:var(--ftb-fw-bold);line-height:1.15;
  font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.ftb-tool-cwc .ftb-cwc-stat--lead .ftb-cwc-num{color:var(--ftb-primary)}
.ftb-tool-cwc .ftb-cwc-lab{font-size:var(--ftb-text-xs);font-weight:var(--ftb-fw-semi);color:var(--ftb-text-muted)}

/* Method table */
.ftb-tool-cwc .ftb-cwc-table{width:100%;border-collapse:collapse;font-size:var(--ftb-text-sm)}
.ftb-tool-cwc .ftb-cwc-table caption{text-align:start;font-weight:var(--ftb-fw-semi);padding-bottom:var(--ftb-space-2)}
.ftb-tool-cwc .ftb-cwc-table th,
.ftb-tool-cwc .ftb-cwc-table td{padding:var(--ftb-space-2) var(--ftb-space-3);text-align:start;
  vertical-align:top;border-bottom:1px solid var(--ftb-border)}
.ftb-tool-cwc .ftb-cwc-table thead th{color:var(--ftb-text-muted);background:var(--ftb-surface-2)}
.ftb-tool-cwc .ftb-cwc-table tbody th{font-weight:var(--ftb-fw-medium)}
.ftb-tool-cwc .ftb-cwc-table .is-num{text-align:end;white-space:nowrap;font-weight:var(--ftb-fw-bold);
  font-variant-numeric:tabular-nums}

/* Panels: segmentation view and frequency list */
.ftb-tool-cwc .ftb-cwc-panel{margin:var(--ftb-space-4) 0;padding:var(--ftb-space-2) var(--ftb-space-4);
  border:1px solid var(--ftb-border);border-radius:var(--ftb-radius)}
.ftb-tool-cwc .ftb-cwc-panel summary{display:flex;align-items:center;min-height:var(--ftb-tap);cursor:pointer;
  font-size:var(--ftb-text-sm);font-weight:var(--ftb-fw-semi)}
.ftb-tool-cwc .ftb-cwc-seg{max-height:20rem;overflow:auto;margin-top:var(--ftb-space-3);
  padding:var(--ftb-space-3);background:var(--ftb-surface);border-radius:var(--ftb-radius);
  white-space:pre-wrap;overflow-wrap:anywhere;line-height:2.1}
.ftb-tool-cwc .ftb-cwc-seg:focus-visible{outline:2px solid var(--ftb-primary);outline-offset:2px}
.ftb-tool-cwc .ftb-cwc-w{margin:0 1px;padding:1px 2px;border-radius:3px;
  background:var(--ftb-primary-soft);box-shadow:inset 0 -2px 0 var(--ftb-primary)}
.ftb-tool-cwc .ftb-cwc-w--x{background:var(--ftb-surface-2);box-shadow:inset 0 -2px 0 var(--ftb-border-strong)}
.ftb-tool-cwc .ftb-cwc-more{color:var(--ftb-text-muted)}

.ftb-tool-cwc .ftb-cwc-freq{margin:var(--ftb-space-2) 0 0;padding:0;list-style:none}
.ftb-tool-cwc .ftb-cwc-freq li{display:grid;grid-template-columns:1fr auto 4.5em;gap:var(--ftb-space-3);
  padding:var(--ftb-space-2) 0;border-bottom:1px solid var(--ftb-border);font-size:var(--ftb-text-sm)}
.ftb-tool-cwc .ftb-cwc-freq li:last-child{border-bottom:0}
.ftb-tool-cwc .ftb-cwc-fw{font-size:var(--ftb-text-base)}
.ftb-tool-cwc .ftb-cwc-fn{text-align:end;color:var(--ftb-text-muted);font-variant-numeric:tabular-nums}
.ftb-tool-cwc .ftb-cwc-freq .ftb-cwc-empty{grid-template-columns:1fr;color:var(--ftb-text-muted)}
