:root{
  --border:#e5e7eb;
  --head:#f8fafc;
  --text:#111827;
  --muted:#6b7280;
}

/* Wrapper + title */
.cts-section{margin:20px 0;color:var(--text);background:#fff;font:500 15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial}
.cts-title{font-size:26px;margin:0 0 6px;font-weight:700}

/* User notice */
.cts-user-notice{border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px 14px;margin:0 0 14px}
.cts-user-badge{display:inline-block;background:#eef6ff;color:#1d4ed8;font-weight:700;border-radius:999px;padding:4px 10px;margin-bottom:6px;font-size:.8rem;letter-spacing:.2px}
.cts-user-desc{margin:0;color:var(--muted);font-size:.95rem;line-height:1.45}

/* Table styling */
.cts-table-wrap{overflow:visible;border:none}
.cts-front-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}
.cts-front-table thead th{
  background:var(--head);
  font-weight:700; font-size:13px; letter-spacing:.2px; text-transform:uppercase;
  text-align:left; padding:14px 16px; border-bottom:1px solid var(--border);
}
.cts-front-table tbody td{padding:14px 16px;border-bottom:1px solid var(--border);vertical-align:middle}
.cts-front-table tbody tr:last-child td{border-bottom:none}
.cts-front-table tbody tr:hover{background:#fafafa}

/* Code text */
.cts-code-text{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono","Courier New",monospace;font-weight:700;letter-spacing:.3px;border:none;padding:0;background:none}

/* Offer direct */
.cts-offer{color:#0a7;font-weight:700}

/* Mobile cards */
@media (max-width:720px){
  .cts-front-table thead{display:none}
  .cts-front-table, .cts-front-table tbody, .cts-front-table tr, .cts-front-table td{display:block;width:100%}
  .cts-front-table{border:none}
  .cts-front-table tbody tr{
    border:1px solid var(--border);
    border-radius:10px; margin-bottom:12px; overflow:hidden; background:#fff;
  }
  .cts-front-table tbody td{border:none; border-top:1px solid var(--border)}
  .cts-front-table tbody td:first-child{border-top:none}
  .cts-front-table tbody td::before{
    content:attr(data-label);
    display:block; font-size:12px; color:var(--muted); text-transform:uppercase; margin-bottom:4px
  }
}
