/* Character counter */
.tool-app .cc{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:16px;align-items:start}
.tool-app .cc-editor{display:grid;gap:8px;min-width:0}
.tool-app .cc-label{font:600 14.5px var(--zl-font-head);color:var(--zl-ink)}
.tool-app textarea.cc-input{width:100%;min-height:280px;resize:vertical;padding:14px 16px;font:400 17px/1.6 var(--zl-font-body);border-radius:16px;box-sizing:border-box}
.tool-app .cc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.tool-app .cc-status{font-size:14px;color:var(--zl-muted);margin-left:4px}
.tool-app .cc-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:29px}
.tool-app .cc-count{border:1px solid var(--zl-line);border-radius:14px;background:var(--zl-surface-2);padding:10px 14px;display:flex;flex-direction:column;min-width:0}
.tool-app .cc-count strong{font:600 26px/1.15 var(--zl-font-head);color:var(--zl-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.tool-app .cc-count span{font:500 13.5px var(--zl-font-head);color:var(--zl-muted)}
.tool-app .cc-count-main{grid-column:1/-1;background:var(--zl-tint);border-color:transparent}
.tool-app .cc-count-main strong{font-size:40px}
.tool-app .cc-limits{grid-column:1/-1;border:1px solid var(--zl-line);border-radius:18px;background:var(--zl-surface);padding:16px 18px;display:grid;gap:14px}
.tool-app .cc-limits-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px}
.tool-app .cc-legend{margin:0;font-size:13.5px;color:var(--zl-muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.tool-app .cc-key{display:inline-block;width:12px;height:12px;border-radius:4px;margin-left:6px}
.tool-app .cc-key-near{background:var(--zl-marigold)}
.tool-app .cc-key-over{background:var(--zl-danger)}
.tool-app .cc-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.tool-app .cc-bar{display:grid;gap:5px;min-width:0}
.tool-app .cc-bar-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.tool-app .cc-bar-name{font:600 14.5px var(--zl-font-head);color:var(--zl-ink)}
.tool-app .cc-bar-num{font:500 14px var(--zl-font-head);color:var(--zl-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.tool-app .cc-track{height:10px;border-radius:999px;background:var(--zl-tint);overflow:hidden}
.tool-app .cc-fill{height:100%;width:0;border-radius:999px;background:var(--zl-accent);transition:width .15s ease}
.tool-app .cc-bar.is-near .cc-fill{background:var(--zl-marigold)}
.tool-app .cc-bar.is-over .cc-fill{background:var(--zl-danger)}
.tool-app .cc-bar-note{font-size:13.5px;color:var(--zl-muted);line-height:1.4}
.tool-app .cc-bar.is-near .cc-bar-note{color:var(--zl-warning)}
.tool-app .cc-bar.is-over .cc-bar-note,.tool-app .cc-bar.is-over .cc-bar-num{color:var(--zl-danger);font-weight:600}
.tool-app .cc-custom{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--zl-line);padding-top:12px}
.tool-app .cc-custom input{width:150px;min-height:44px;padding:0 12px}
@media (max-width:860px){
  .tool-app .cc{grid-template-columns:1fr}
  .tool-app .cc-counts{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr))}
  .tool-app .cc-bars{grid-template-columns:1fr}
}
@media (max-width:520px){
  .tool-app .cc-counts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tool-app textarea.cc-input{min-height:200px}
  .tool-app .cc-count strong{font-size:22px}
  .tool-app .cc-count-main strong{font-size:34px}
  .tool-app .cc-actions .btn-primary,.tool-app .cc-actions .btn-outline{flex:1 1 0}
  .tool-app .cc-status{flex:1 0 100%;margin:0}
}
.tool-app .cc-bar[hidden]{display:none}
