/* ═══════════════════════════════════════════
   TOOLORA P2 ENTERPRISE — PDF & Text CSS
═══════════════════════════════════════════ */

/* ── Server badge ────────────────────────── */
.tlr-pill--server {
  background: linear-gradient(135deg, #10b981, #059669);
  color: #fff !important;
}

/* ── Drag-sort list ──────────────────────── */
.tlr2-sort-list { display:flex; flex-direction:column; gap:8px; }
.tlr2-sort-item {
  display:flex; align-items:center; gap:10px;
  background:var(--surface2); border:2px solid var(--border);
  border-radius:10px; padding:10px 14px; cursor:grab; user-select:none;
  transition:background .15s, border-color .15s, transform .15s, box-shadow .15s;
}
.tlr2-sort-item:hover {
  background:var(--hover-bg); border-color:var(--primary);
  transform:translateY(-1px); box-shadow:0 4px 14px rgba(108,99,255,.12);
}
.tlr2-sort-item.dragging { opacity:.45; cursor:grabbing; transform:scale(1.02); }
.tlr2-sort-item.drag-over { border-color:var(--primary); background:var(--hover-bg); border-style:dashed; }
.tlr2-drag-handle { font-size:1.2rem; color:var(--text3); cursor:grab; transition:color .15s; }
.tlr2-sort-item:hover .tlr2-drag-handle { color:var(--primary); }
.tlr2-sort-num { font-size:.78rem; font-weight:800; color:var(--primary); min-width:20px; }
.tlr2-remove-btn {
  margin-left:auto; background:none; border:none; color:var(--text3);
  font-size:1rem; cursor:pointer; width:26px; height:26px;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  transition:background .15s, color .15s;
}
.tlr2-remove-btn:hover { background:rgba(239,68,68,.12); color:var(--danger); }

/* ── Results list ────────────────────────── */
.tlr-bulk-item__dl {
  color:var(--primary); font-size:.78rem; font-weight:700;
  text-decoration:none; white-space:nowrap;
  padding:3px 10px; border-radius:6px;
  border:1px solid var(--primary);
  transition:all .15s;
}
.tlr-bulk-item__dl:hover {
  background:var(--primary); color:#fff;
}

/* ── Word counter stat cards ─────────────── */
.tlr2-stat-card {
  background:var(--surface2); border:2px solid var(--border);
  border-radius:12px; padding:14px; text-align:center;
  transition:border-color .2s, transform .15s;
}
.tlr2-stat-card:hover { border-color:var(--primary); transform:translateY(-2px); }
.tlr2-stat-val { font-size:1.6rem; font-weight:900; }
.tlr2-stat-lbl { font-size:.72rem; color:var(--text3); font-weight:700; text-transform:uppercase; letter-spacing:.5px; margin-top:4px; }

/* ── Keyword density bar ─────────────────── */
.tlr2-kd-row {
  display:flex; align-items:center; gap:10px;
  padding:7px 0; border-bottom:1px solid var(--border);
  transition:background .15s; border-radius:4px;
}
.tlr2-kd-row:hover { background:var(--hover-bg); padding-left:6px; }
.tlr2-kd-word { font-weight:700; color:var(--text); min-width:100px; font-size:.85rem; }
.tlr2-kd-bar  { flex:1; height:5px; background:var(--border); border-radius:50px; overflow:hidden; }
.tlr2-kd-fill { height:100%; background:linear-gradient(90deg,var(--primary),var(--primary2)); border-radius:50px; }
.tlr2-kd-count { font-size:.75rem; font-weight:700; color:var(--primary); min-width:40px; text-align:right; }
.tlr2-kd-pct   { font-size:.72rem; color:var(--text3); min-width:50px; text-align:right; }

/* ── Case converter buttons ──────────────── */
.tlr2-case-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(145px,1fr)); gap:8px; margin-bottom:14px;
}
.tlr2-case-btn {
  display:flex; flex-direction:column; align-items:center; gap:3px;
  background:var(--surface2); border:2px solid var(--border);
  border-radius:10px; padding:12px 8px; cursor:pointer; text-align:center;
  transition:all .2s;
}
.tlr2-case-btn:hover { border-color:var(--primary); background:var(--hover-bg); transform:translateY(-1px); }
.tlr2-case-btn.active { border-color:var(--primary); background:rgba(108,99,255,.1); }
.tlr2-case-btn-icon { font-size:1.3rem; }
.tlr2-case-btn-name { font-size:.82rem; font-weight:800; color:var(--text); }
.tlr2-case-btn-sample { font-size:.7rem; color:var(--text3); font-family:monospace; }

/* ── TTS controls ────────────────────────── */
.tlr2-tts-controls {
  display:flex; gap:8px; flex-wrap:wrap; margin-top:12px;
}
.tlr2-tts-controls .tlr-btn { padding:9px 16px; font-size:.85rem; }

/* ── Responsive ──────────────────────────── */
@media(max-width:768px) {
  .tlr2-case-grid { grid-template-columns:repeat(2,1fr); }
}
