
:root{--lc-accent:#0ea765;--lc-muted:#6b7280;--lc-ring:#d1fae5}
.lc-wrap{max-width:960px;margin:24px auto;padding:0 12px}
.lc-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 8px 30px rgba(17,24,39,.06);overflow:hidden}
.lc-header{background:linear-gradient(135deg,#0b3d2e,#145a43);color:#fff;padding:18px 20px;display:flex;justify-content:space-between;align-items:center}
.lc-brand{font-size:20px;font-weight:700}
.lc-badges{display:flex;gap:8px}
.lc-badge{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:4px 10px;border-radius:999px;font-size:12px;color:#fff}
.lc-body{padding:18px}
.lc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.lc-row label{display:block;font-weight:600;margin-bottom:6px}
.lc-input,.lc-select,.lc-number,.lc-date{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:12px;transition:box-shadow .15s,border-color .15s;background:#fff}
.lc-input:focus,.lc-select:focus,.lc-number:focus,.lc-date:focus{outline:none;border-color:#0ea765;box-shadow:0 0 0 4px var(--lc-ring)}
.lc-hint{font-size:12px;color:var(--lc-muted);margin-top:4px}
.lc-services{margin-top:8px;padding:12px;border:1px dashed #e5e7eb;border-radius:12px;background:#f9fafb}
.lc-service-item{display:grid;grid-template-columns:1fr 120px;gap:8px;align-items:center;margin:6px 0}
.lc-summary{margin-top:12px;background:#f9fafb;border:1px dashed #e5e7eb;padding:14px;border-radius:12px;position:relative}
.lc-total{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-top:10px;font-weight:700}
.lc-btn{display:inline-flex;gap:8px;align-items:center;padding:12px 16px;border-radius:12px;background:#00a650;color:#fff;text-decoration:none;font-weight:700;border:0;cursor:pointer;box-shadow:0 6px 16px rgba(0,166,80,.25)}
.lc-btn.secondary{background:#e5e7eb;color:#111}
.lc-muted{color:var(--lc-muted);font-size:13px}
.ticket-dots{border:2px dashed #d1d5db;border-radius:16px;padding:16px}
.ticket-knob{position:absolute;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;border:4px solid #dbeafe;background:#fff}
.ticket-left{left:-14px} .ticket-right{right:-14px}
@media (max-width:720px){ .lc-grid{grid-template-columns:1fr} .lc-header{flex-direction:column;align-items:flex-start;gap:8px} }
.ui-datepicker{font-size:14px}


/* === Responsiveness Enhancements (2025-08-19) === */
.lc-wrap{width:100%;max-width:960px;margin:24px auto;padding-left:16px;padding-right:16px}
.lc-card img, .lc-body img{max-width:100%;height:auto;display:block}
.lc-pagos-opciones{display:flex;flex-wrap:wrap;gap:10px}
.lc-pagos-opciones .button,
.lc-btn{min-width:180px;justify-content:center}

/* Make tables scroll on small screens */
.lc-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.lc-table{width:100%;min-width:560px}

/* Medium screens */
@media (max-width: 1024px){
  .lc-grid{grid-template-columns:1fr 1fr;gap:12px}
  .lc-body{padding:16px}
}

/* Tablets */
@media (max-width: 768px){
  .lc-grid{grid-template-columns:1fr}
  .lc-header{flex-direction:column;align-items:flex-start;gap:8px}
  .lc-total{flex-direction:column;align-items:flex-start;gap:8px}
  .lc-btn, .lc-pagos-opciones .button{width:100%}
}

/* Phones */
@media (max-width: 480px){
  .lc-header{padding:12px}
  .lc-brand{font-size:18px}
  .lc-body{padding:12px}
  .lc-row{gap:8px}
  .lc-input,.lc-select,.lc-number,.lc-date{padding:10px}
  .lc-service-item{grid-template-columns:1fr;gap:6px}
  .ticket-dots{padding:12px}
}
