@charset "UTF-8";:root{--color-bg: #fbf6f7;--color-surface: #ffffff;--color-border: #ece1e4;--color-text: #2a2230;--color-text-muted: #7a6f80;--color-primary: #c9456f;--color-primary-hover: #b03a60;--color-primary-suave: #fbe8ee;--color-success: #15803d;--color-warning: #d97706;--color-danger: #dc2626;--radius: 14px;--shadow: 0 1px 3px rgba(60, 20, 40, .08), 0 4px 14px rgba(60, 20, 40, .05)}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--color-bg);color:var(--color-text);font-size:15px;line-height:1.45;-webkit-text-size-adjust:100%}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:16px;color:var(--color-text)}a{color:var(--color-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.encabezado{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:20px}.encabezado h1{margin:0;font-size:24px;letter-spacing:-.01em}h2{font-size:18px}p.ayuda,.ayuda{color:var(--color-text-muted);font-size:13px}button{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:10px;padding:9px 16px;min-height:40px;font-size:14px;font-weight:500;transition:background .15s,border-color .15s,transform .05s}button:hover:not(:disabled){background:var(--color-primary-suave);border-color:#f1c4d1}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.55;cursor:default}button.primario,a.primario{background:var(--color-primary);color:#fff;border:none;border-radius:10px;padding:9px 18px;min-height:40px;font-weight:600;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}button.primario:hover:not(:disabled),a.primario:hover:not(:disabled){background:var(--color-primary-hover);border:none}button.peligro{color:var(--color-danger)}input[type=text],input[type=number],input[type=email],input[type=password],input[type=date],input[type=search],textarea,select{padding:10px 12px;min-height:42px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface)}input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=password]:focus,input[type=date]:focus,input[type=search]:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-suave)}.vacio{color:var(--color-text-muted)}.error{color:var(--color-danger);font-size:13px}.aviso{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:10px 14px;font-size:13px}.tabla{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.tabla th,.tabla td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--color-border);font-size:14px;vertical-align:middle}.tabla th{color:var(--color-text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.03em;background:#fdf9fa}.tabla tr:last-child td{border-bottom:none}.tabla .descripcion{color:var(--color-text-muted);font-size:12px;margin-top:2px}.tabla .acciones{display:flex;gap:8px;flex-wrap:wrap}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600}.badge.activo{background:#dcfce7;color:var(--color-success)}.badge.inactivo{background:#f3f4f6;color:var(--color-text-muted)}.overlay{position:fixed;inset:0;background:#1e0f1973;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.panel{background:var(--color-surface);border-radius:var(--radius);box-shadow:0 10px 40px #1e0f1940;padding:24px;width:100%;max-width:440px;display:flex;flex-direction:column;gap:6px;max-height:90vh;overflow-y:auto}.panel h2{margin:0 0 12px;font-size:19px}.panel label{font-size:13px;font-weight:600;margin-top:10px}.panel label.checkbox{display:flex;align-items:center;gap:8px;font-weight:500;min-height:40px}.panel input[type=text],.panel input[type=number],.panel input[type=email],.panel input[type=password],.panel input[type=date],.panel textarea,.panel select{margin-top:4px;width:100%}.panel .botones{margin-top:18px;display:flex;justify-content:flex-end;gap:8px}@media(max-width:768px){.encabezado h1{font-size:21px}.overlay{align-items:flex-end;padding:0}.panel{max-width:none;border-radius:18px 18px 0 0;max-height:92vh;padding:20px 18px}.tabla{background:transparent;border:none;box-shadow:none;border-radius:0;display:block}.tabla thead{display:none}.tabla tbody{display:flex;flex-direction:column;gap:12px}.tabla tr{display:flex;flex-direction:column;gap:6px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px}.tabla td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:2px 0;border:none;text-align:right}.tabla td[data-label]:before{content:attr(data-label);color:var(--color-text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.03em;text-align:left;flex-shrink:0}.tabla td.celda-producto{justify-content:flex-start;text-align:left;padding-bottom:6px}.tabla td.acciones{justify-content:stretch;padding-top:8px;margin-top:4px;border-top:1px solid var(--color-border)}.tabla td.acciones button{flex:1}}
