.esl-card{max-width:820px;margin:1.5rem auto;padding:1.25rem;border-radius:16px;box-shadow:0 10px 25px rgba(0,0,0,.06);background:#fff;border:1px solid #eaeaea;}
.esl-title{margin:0 0 .25rem;font-size:1.5rem;line-height:1.2;}
.esl-desc{margin:0 0 1rem;color:#555;}
.esl-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end;margin-bottom:1rem;}
.esl-field{display:flex;flex-direction:column;gap:6px;}
.esl-field label{font-weight:600;font-size:.95rem;}
.esl-field input{padding:.65rem .75rem;border:1px solid #d6d6d6;border-radius:12px;outline:none;}
.esl-actions{grid-column:1/-1;display:flex;justify-content:flex-end;margin-top:.25rem;}
.esl-button{padding:.7rem 1.1rem;border:none;border-radius:12px;font-weight:700;cursor:pointer;background:#111;color:#fff;transition:transform .04s ease;box-shadow:0 6px 16px rgba(17,17,17,.18);}
.esl-button:active{transform:scale(.99);}
.esl-alert{padding:.75rem 1rem;border-radius:12px;margin:.75rem 0;}
.esl-alert-error{background:#ffe9e9;border:1px solid #ffc9c9;color:#8a0000;}
.esl-alert-warning{background:#fff7e6;border:1px solid #ffe1a6;color:#7a4b00;}
.esl-results h3{margin-top:.5rem;}
.esl-table-wrapper{overflow:auto;border:1px solid #eee;border-radius:12px;}
.esl-table{width:100%;border-collapse:separate;border-spacing:0;}
.esl-table th,.esl-table td{padding:.6rem .75rem;border-bottom:1px solid #f1f1f1;white-space:nowrap;}
.esl-table thead th{position:sticky;top:0;background:#fafafa;z-index:1;text-align:left;}
@media(max-width:680px){
  .esl-form{grid-template-columns:1fr;}
  .esl-actions{justify-content:stretch;}
  .esl-button{width:100%;}
}