/* Club Perricos y panel del equipo */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.app{padding:28px 0 64px;min-height:70vh}
.app__caja{max-width:560px;margin:0 auto}
.app--ancho .app__caja{max-width:980px}
.panel{background:#fff;border:1px solid var(--borde);border-radius:24px;padding:22px;margin:0 0 18px}
.panel h2{font-size:26px;color:var(--cafe);margin:0 0 6px}
.panel h3{font-size:20px;color:var(--cafe);margin:0 0 8px}
.panel p{margin:6px 0 12px}
.suave{color:var(--suave)}
.form{display:flex;flex-direction:column;gap:12px}
.form label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:15px;color:var(--suave)}
.form input:not([type=checkbox]):not([type=radio]),.form select,.form textarea{font:inherit;font-size:17px;font-weight:400;color:var(--texto);border:2px solid var(--borde);border-radius:14px;padding:11px 13px;background:#fff;width:100%}
.form textarea{min-height:76px;resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:0;border-color:var(--cafe)}
.form .check{flex-direction:row;align-items:flex-start;gap:10px;color:var(--texto);font-weight:500}
.form .check input{width:22px;height:22px;margin-top:1px;accent-color:var(--cafe);flex:none}
.fila2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:520px){.fila2{grid-template-columns:1fr}}
.codigo-input{letter-spacing:.5em;text-align:center;font-size:26px!important;font-weight:700!important}
.btn{font:inherit;font-weight:700;border:0;border-radius:999px;padding:12px 20px;cursor:pointer;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
.btn--cafe{background:var(--cafe);color:#fff}.btn--cafe:hover{background:var(--cafe-osc);color:#fff}
.btn--naranja{background:var(--naranja);color:var(--cafe-tinta)}
.btn--borde{background:#fff;color:var(--cafe);border:2px solid var(--cafe)}
.btn--texto{background:none;color:var(--cafe);padding:8px 4px;min-height:0;text-decoration:underline}
.btn--negro{background:#1f1f1f;color:#fff}
.btn[disabled]{opacity:.55;cursor:wait}
.btn--ancho{width:100%}
.acciones{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.error{background:#fde8e4;color:#8a1c0b;border-radius:14px;padding:10px 14px;font-weight:600;margin:0}
.ok{background:#e3f7e9;color:#135c2b;border-radius:14px;padding:10px 14px;font-weight:600;margin:0}
.ok p,.error p{margin:2px 0}

/* Tarjeta */
.qr{background:#fff;border-radius:18px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:6px;margin:16px auto 0;width:max-content;color:var(--texto)}
.qr img,.qr canvas{width:180px;height:180px;image-rendering:pixelated}
.qr small{font-size:12px;color:var(--suave)}

.sellos{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.sello{width:46px;height:46px;border-radius:50%;border:2px dashed var(--borde);display:grid;place-items:center;background:var(--crema)}
.sello--lleno{border:0;background:var(--naranja)}
.sello svg{width:24px;height:24px;color:var(--cafe);opacity:.25}
.sello--lleno svg{opacity:1}
.premio{background:#e3f7e9;color:#135c2b;border-radius:14px;padding:10px 14px;font-weight:700}

.lista{list-style:none;margin:0;padding:0}
.lista li{border-bottom:1px solid var(--borde);padding:12px 0;display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.lista li:last-child{border-bottom:0}
.lista .mas{color:#135c2b;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.lista .menos{color:#8a1c0b;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.lista small{color:var(--suave);display:block}

.mascota{border:1px solid var(--borde);border-radius:18px;padding:14px 16px;margin:0 0 12px}
.mascota__cabeza{display:flex;justify-content:space-between;gap:6px 10px;align-items:center;flex-wrap:wrap}
.mascota__cabeza .acciones{gap:4px 14px}
.mascota__nombre{font-family:var(--titulo);font-weight:800;font-size:22px;color:var(--cafe)}
.chips2{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.chips2 span{background:var(--crema);border-radius:999px;padding:3px 10px;font-size:14px}
.aviso-vac{background:#fff4e0;border-radius:12px;padding:8px 12px;font-size:15px;margin:8px 0}
.aviso-vac--vencida{background:#fde8e4;color:#8a1c0b}
details.mas-datos summary{cursor:pointer;color:var(--cafe);font-weight:700;margin:6px 0}
dialog{border:0;border-radius:24px;padding:0;max-width:min(560px,calc(100vw - 24px));width:100%}
dialog::backdrop{background:rgba(5,35,40,.45)}
.dialogo{padding:22px;max-height:85vh;overflow:auto}
.dialogo__cabeza{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.dialogo__cabeza h3{margin:0;color:var(--cafe);font-size:24px}
.cerrar{border:0;background:var(--crema);color:var(--cafe);width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:22px;line-height:1}
.wallet{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}

/* Equipo */
.equipo-barra{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.pestanas{display:flex;gap:6px;flex-wrap:wrap}
.pestanas button{font:inherit;font-weight:700;border:2px solid var(--borde);background:#fff;color:var(--texto);padding:8px 14px;border-radius:999px;cursor:pointer}
.pestanas button[aria-pressed=true]{background:var(--cafe);border-color:var(--cafe);color:#fff}
.buscar{display:flex;gap:8px}
.buscar input{flex:1;min-width:0}
.resultados{list-style:none;margin:10px 0 0;padding:0}
.resultados button{width:100%;text-align:left;font:inherit;background:#fff;border:1px solid var(--borde);border-radius:14px;padding:12px 14px;margin:0 0 8px;cursor:pointer;display:flex;justify-content:space-between;gap:10px}
.resultados button:hover{border-color:var(--cafe)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:860px){.grid2{grid-template-columns:1fr}}
.cifras{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:8px 0}
.cifra{background:var(--crema);border-radius:16px;padding:12px}
.cifra strong{display:block;font-family:var(--titulo);font-size:28px;color:var(--cafe);line-height:1.1;font-variant-numeric:tabular-nums}
.cifra span{font-size:14px;color:var(--suave)}
.camara{position:relative;border-radius:18px;overflow:hidden;background:#000;margin:10px 0}
.camara video{width:100%;display:block;max-height:340px;object-fit:cover}
.tabla{width:100%;border-collapse:collapse;font-size:15px}
.tabla th,.tabla td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--borde)}
.tabla th{color:var(--cafe)}
.etq{display:inline-block;border-radius:999px;padding:2px 9px;font-size:13px;font-weight:700;background:var(--crema);color:var(--cafe)}
.etq--gris{background:#eee;color:#555}
.fila3{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin:10px 0 6px}
@media (max-width:620px){.fila3{grid-template-columns:1fr 1fr}.fila3 .btn{grid-column:1/-1}}
.destacado{background:#1f1410;color:#fff;border-radius:22px;padding:22px;text-align:center;margin:16px 0 20px;display:flex;flex-direction:column;align-items:center;gap:6px}
.destacado>span:first-child{color:#ffd9a8;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:14px}
.destacado strong{font-family:var(--titulo);font-size:64px;line-height:1;font-variant-numeric:tabular-nums}
.cifra .var{display:inline-block;margin:2px 0 4px}
.var{border-radius:999px;padding:2px 9px;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.var--sube{background:#e3f7e9;color:#135c2b}
.var--baja{background:#fde8e4;color:#8a1c0b}
.var--neutro{background:#eee;color:#555}
.cifra span:last-child{display:block}
.panel h3+.cifras{margin-top:6px}
.panel .cifras+h3{margin-top:18px}
.destacado .var{font-size:14px}
.cifra strong{font-size:26px;overflow-wrap:anywhere}

/* Fecha con día, mes y año */
.campo-fecha{border:0;margin:0;padding:0;min-width:0}
.campo-fecha legend{font-weight:600;font-size:15px;color:var(--suave);padding:0;margin-bottom:5px}
.campo-fecha__fila{display:grid;grid-template-columns:1fr 1.6fr 1.2fr;gap:8px}
.form .campo-fecha select{padding:11px 8px}
/* Pendientes del equipo */
.pend-cabeza{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.pend-cabeza h2{margin:0}
.pend-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.pend-grid--uno{grid-template-columns:1fr;max-width:640px}
@media (max-width:900px){.pend-grid{grid-template-columns:1fr}}
.pend-col h3{font-size:20px;color:var(--cafe);margin:0 0 8px}
.pend-col h3 small{color:var(--suave);font-weight:600}
.pend{background:var(--crema);border-radius:18px;padding:14px;margin:0 0 10px;border-left:6px solid var(--naranja,#ffab1e)}
.pend--urgente{border-left-color:#c62f14;background:#fdecea}
.pend--proceso{border-left-color:#2a6fb0}
.pend__titulo{font-weight:700;font-size:18px;line-height:1.3}
.pend__detalle{margin:6px 0 0;color:var(--texto);white-space:pre-line}
.pend__chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.pend-chip{background:#fff;border-radius:999px;padding:3px 10px;font-size:14px;font-weight:600}
.pend-chip--rojo{background:#c62f14;color:#fff}
.pend-chip--naranja{background:#ffab1e;color:#3b1a00}
.pend-chip--azul{background:#2a6fb0;color:#fff}
.pend__botones{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pend__botones .btn{min-height:44px;padding:10px 16px}
.pend-opciones{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.pend-opciones legend{font-weight:600;font-size:15px;color:var(--suave);margin-bottom:6px}
.pend-opciones label{display:inline-flex}
.pend-opciones input{position:absolute;opacity:0;pointer-events:none}
.pend-opciones span{border:2px solid var(--borde);border-radius:999px;padding:9px 14px;font-weight:700;color:var(--texto);cursor:pointer;background:#fff}
.pend-opciones input:checked+span{background:var(--cafe);border-color:var(--cafe);color:#fff}
.pend-opciones input:focus-visible+span{outline:3px solid var(--naranja,#ffab1e)}
.pend-hechos{list-style:none;padding:0;margin:10px 0 0}
.pend-hechos li{padding:6px 0;border-bottom:1px solid var(--borde)}
details.panel summary{cursor:pointer}

/* Tarjeta Club Perricos v2: amarilla sobre textura */
.mt-fondo{margin:0 0 18px}
.mt{border-radius:24px;padding:20px 18px;color:#fff;background:linear-gradient(135deg,var(--azul-claro) 0%,var(--azul) 100%);box-shadow:0 10px 24px rgba(0,90,80,.22);display:flex;flex-direction:column;gap:12px}
.mt__arriba{display:flex;justify-content:space-between;align-items:center;gap:12px}
.mt__club{font-family:var(--titulo);font-weight:800;font-size:30px;line-height:1}
.mt__logo{width:58px;height:58px;border-radius:50%;background:#fff;object-fit:cover;flex:none}
.mt__puntos{display:flex;align-items:baseline;gap:10px;margin-top:-4px}
.mt__puntos span{font-weight:700;font-size:17px;opacity:.85}
.mt__puntos strong{font-family:var(--titulo);font-weight:800;font-size:34px;line-height:1;font-variant-numeric:tabular-nums}
.mt__fila{background:#fff;border-radius:16px;padding:10px 12px;display:flex;align-items:center;gap:8px}
.mt__sellos{display:flex;gap:6px;flex-wrap:nowrap;flex:none}
.ms{width:36px;height:36px;border-radius:50%;flex:none;display:grid;place-items:center}
.ms svg{width:22px;height:22px;fill:#fff}
.ms--p{background:var(--cafe)}
.ms--v{background:#00a99a}
.ms--vacio{background:#fff;border:2.5px dashed #9fcfd1}
.ms--vacio-v{border-color:#8fd3cb}
.mt__premio{margin-left:auto;min-width:0;text-align:right;font-weight:700;font-size:14px;line-height:1.15;color:var(--cafe)}
.mt__premio small{display:block;font-weight:600;color:var(--suave);font-size:12px}
.mt__pie{display:flex;justify-content:space-between;align-items:flex-end;gap:10px}
.mt__nombre{font-size:18px;font-weight:700}
.mt__codigo{font-variant-numeric:tabular-nums;letter-spacing:.05em;opacity:.8;font-size:13px}
.mt__nivel{background:rgba(255,255,255,.22);border-radius:999px;padding:5px 12px;font-weight:700;font-size:14px;white-space:nowrap}
.mt__nivel--oro{background:#ffd54a;color:var(--cafe-tinta)}
.mt .qr{margin-top:4px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:460px){.mt{padding:16px 12px}.mt__fila{padding:8px 9px;gap:6px}.mt__sellos{gap:4px}.ms{width:28px;height:28px}.ms svg{width:18px;height:18px}.ms--vacio{border-width:2px}.mt__premio{font-size:12.5px}.mt__premio small{font-size:11px}.mt__club{font-size:26px}.mt__logo{width:50px;height:50px}}
/* Base de clientes (panel) */
.base-cifras{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:10px 0 14px}
.base-cifra{background:var(--crema);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column}
.base-cifra strong{font-family:var(--titulo);font-size:24px;color:var(--cafe);line-height:1.1}
.base-cifra span{font-size:13px;color:var(--suave)}
.base-filtros{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.base-filtros select,.base-filtros input{min-height:44px;border:1px solid var(--borde);border-radius:12px;padding:0 10px;font:inherit;background:#fff}
.base-filtros form{flex:1;min-width:200px;display:flex}.base-filtros form input{flex:1}
.base-fila{cursor:pointer}.base-fila:hover{background:var(--crema)}
.chip-m{display:inline-block;font-size:12px;font-weight:700;border-radius:999px;padding:2px 8px;background:var(--crema);margin:1px;white-space:nowrap}
.chip-m--ok{background:#ffe7b8;color:#7a4b00}

.leer-reglas{font-size:13px;margin:-4px 0 12px 30px;color:var(--suave)}
.leer-reglas a{color:var(--cafe);text-decoration:underline}

/* Ruleta de premios */
.ruleta{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
.ruleta__titulo{margin:0;color:var(--cafe)}
.ruleta__marco{position:relative;width:min(320px,82vw);aspect-ratio:1}
.ruleta__giro{width:100%;height:100%;border-radius:50%;box-shadow:0 10px 30px rgba(11,63,69,.25),0 0 0 8px #fff,0 0 0 11px var(--cafe)}
.ruleta__rueda{display:block;width:100%;height:100%}
.ruleta__flecha{position:absolute;top:-14px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-top:30px solid #f28c28;z-index:2;filter:drop-shadow(0 2px 2px rgba(0,0,0,.25))}
.ruleta__msg{min-height:8px;width:100%}
.ruleta__premio{background:var(--crema);border:2px solid var(--azul-claro);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:4px}
.ruleta__premio span{color:var(--suave);font-weight:600}
.ruleta__premio strong{font-family:'Baloo 2',sans-serif;font-size:26px;color:var(--cafe);line-height:1.1}
.ruleta__btn{max-width:320px}
.giros{display:flex;flex-direction:column;gap:10px}
.giro-item{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--crema);border:1px solid var(--borde);border-radius:14px;padding:10px 12px}
.giro-item small{display:block;color:var(--suave)}
.cupon{display:flex;align-items:center;justify-content:space-between;gap:10px;border:2px dashed var(--azul-claro);border-radius:14px;padding:10px 12px;margin-top:8px}
.cupon small{display:block;color:var(--suave)}
.tabla-ruleta{width:100%;border-collapse:collapse;font-size:14px}
.tabla-ruleta th,.tabla-ruleta td{padding:6px 4px;border-bottom:1px solid var(--borde);text-align:left;vertical-align:middle}
.tabla-ruleta input{width:100%;min-width:0;padding:6px;border:1px solid var(--borde);border-radius:8px;font:inherit}
.tabla-ruleta td.num input{max-width:80px}
.giro-item .btn,.cupon .btn{white-space:nowrap;flex:none}
.panel.promo{border:2px solid #f28c28;background:#fff8ee}
/* Votación de finalistas */
.finalistas{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:0 0 18px}
.finalista{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 8px 24px rgba(11,63,69,.12);display:flex;flex-direction:column}
.finalista img,.finalista__sinfoto{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--crema)}
.finalista__sinfoto{display:grid;place-items:center;font-size:48px}
.finalista__cuerpo{padding:14px;display:flex;flex-direction:column;gap:6px;flex:1}
.finalista__cuerpo h3{margin:0;font-size:24px;color:var(--cafe)}
.finalista__cuerpo .btn{margin-top:auto}
.finalista--mio{outline:4px solid #f28c28}

.btn-inicio{text-decoration:none;font-weight:700;border:2px solid var(--borde);border-radius:999px;padding:6px 14px;margin-left:8px;white-space:nowrap}
.btn-inicio:hover{background:var(--crema)}
/* Portal del cliente: compras, estado de cuenta y recomendaciones */
.panel--cuenta{border-color:#f3d27a}
.lista.compras details summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;width:100%}
.lista.compras details summary::-webkit-details-marker{display:none}
.lista.compras li{display:block}
.compra__prods{list-style:none;padding:6px 0 0;margin:0}
.compra__prods li{display:grid !important;grid-template-columns:40px 1fr auto;gap:8px;align-items:center;padding:4px 0;font-size:14px}
.compra__prods img{width:40px;height:40px;object-fit:contain;border-radius:8px;border:1px solid var(--borde);background:#fff}
.recos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:8px 0 12px}
.reco{border:1px solid var(--borde);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:4px;font-size:14px;background:#fff}
.reco img{width:100%;height:100px;object-fit:contain}
.reco__vacia{height:100px;display:flex;align-items:center;justify-content:center;font-size:32px;background:var(--crema);border-radius:10px}
.reco small{color:var(--suave)}
#fEnv input:not([type=checkbox]),#fEnv select{min-height:42px;border-radius:12px;border:1px solid var(--borde);padding:0 10px;font:inherit;width:100%;box-sizing:border-box;background:#fff}
#fEnv label{display:flex;flex-direction:column;gap:4px;font-size:14px}
#fEnv label.check{flex-direction:row;align-items:center;gap:6px}

/* Reportes del equipo (Mi avance y ventas mes con mes) */
.rep-persona h3 { margin-bottom: 10px; }
.rep-metas { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; }
.rep-meta { border: 1px solid #e3eeec; border-radius: 14px; padding: 12px 14px; background: #fbfdfc; }
.rep-meta__cab { display: flex; justify-content: space-between; align-items: baseline; font-weight: 700; }
.rep-meta__cab strong { font-size: 30px; line-height: 1; }
.rep-meta__pie { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap; color: #5b6b6a; }
.rep-barra { position: relative; height: 16px; border-radius: 999px; background: #eef2f1; margin: 10px 26px 8px 0; }
.rep-barra > div { height: 100%; border-radius: 999px; transition: width .6s; }
.rep-barra--rojo > div { background: linear-gradient(90deg, #f28b74, #d9472b); }
.rep-barra--amarillo > div { background: linear-gradient(90deg, #ffd66b, #f0a500); }
.rep-barra--verde > div { background: linear-gradient(90deg, #7fd8a4, #1f9d55); }
.rep-estrella { position: absolute; right: -26px; top: -6px; font-size: 22px; filter: grayscale(1); opacity: .35; }
.rep-estrella.on { filter: none; opacity: 1; animation: latidoE 1.4s ease-in-out infinite; }
@keyframes latidoE { 50% { transform: scale(1.25); } }
.rep-msg { margin: 8px 0 0; font-weight: 600; font-size: 14px; }
.rep-msg--verde { color: #1f7a45; } .rep-msg--amarillo { color: #8a5d00; } .rep-msg--rojo { color: #a3260f; }
.rep-grafs { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; margin-top: 14px; }
.rep-graf h4 { margin: 0 0 4px; font-size: 14px; color: #3f5150; }
.rep-barras { width: 100%; height: 110px; display: block; }
.rep-barras rect { cursor: pointer; } .rep-barras rect:hover { opacity: .8; }
.rep-ejes { display: flex; } .rep-ejes span { flex: 1; text-align: center; font-size: 11px; color: #6b7b7a; }
.rep-flecha { font-weight: 700; } .rep-flecha.sube { color: #1f9d55; } .rep-flecha.baja { color: #d9472b; }

/* Tablero de reportes (estilo Pulpos) */
.tb-filtros { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 14px; }
.tb-filtros select, .tb-filtros input, .tb-chip { border: 1px solid #dfe5ea; border-radius: 10px; padding: 8px 12px; background: #fff; font: inherit; font-size: 15px; }
.tb-sec { font-size: 22px; margin: 22px 0 10px; color: #1d2b2a; }
.tb-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 16px; }
.tb-card { background: #fff; border: 1px solid #e6eaee; border-radius: 12px; padding: 16px 18px; box-shadow: 0 1px 2px rgba(16,24,40,.04); min-height: 150px; }
.tb-card__cab { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px; }
.tb-card__cab h4 { margin: 0; font-size: 17px; font-weight: 600; color: #1f2a37; }
.tb-ver { background: none; border: 0; color: #0b84c6; font: inherit; font-size: 14px; cursor: pointer; white-space: nowrap; padding: 0; }
.tb-ver:hover { text-decoration: underline; }
.tb-num { font-size: 30px; font-weight: 700; color: #111827; margin: 8px 0 4px; }
.tb-nota { margin: 2px 0 0; font-size: 14px; }
.tb-linea { width: 100%; height: auto; display: block; }
.tb-linea text { font-size: 9px; fill: #6b7280; }
.tb-linea circle:hover { fill: rgba(11,132,198,.25); }
.tb-tcab { display: flex; justify-content: space-between; background: #f6f8fa; margin: 12px -18px 4px; padding: 8px 18px; font-size: 14px; color: #4b5563; }
.tb-lista { list-style: none; margin: 0; padding: 0; }
.tb-lista li { display: flex; align-items: center; gap: 10px; padding: 8px 0; font-size: 15px; }
.tb-lista li strong { margin-left: auto; white-space: nowrap; }
.tb-ico { width: 34px; height: 34px; border-radius: 50%; background: #e8f4fb; display: inline-flex; align-items: center; justify-content: center; flex: none; font-size: 16px; }
.tb-nom { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.tb-nom small { display: block; color: #6b7280; font-size: 12px; }
.tb-sub { padding: 2px 0 2px 44px !important; font-size: 13px !important; color: #4b5563; }
.tb-vacio { color: #8a96a3; font-size: 14px; justify-content: center; }
.tb-det-cab { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 12px; }
.tb-det-cab h2 { margin: 0; } .tb-det-cab > div { flex: 1; }
.tb-total td { border-top: 2px solid #cfd8dc; background: #f8fafb; }
.tb-neg { color: #c2410c; }
.pr-stock{display:inline-block;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap}
.pr-stock--si{background:#dcf5e3;color:#16703a}
.pr-stock--no{background:#fde2e0;color:#b3261e}
tr.clic{cursor:pointer}
tr.clic:hover td{background:#f3f9f9}
/* Comisiones veterinaria */
.cv-resumen{margin-top:10px;border:1px solid var(--borde,#e5dccf);border-radius:12px;overflow:hidden}
.cv-resumen>div{display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:8px 12px;border-top:1px solid var(--borde,#eee);align-items:center}
.cv-resumen>div:first-child{border-top:0}
.cv-resumen .cv-total{background:#fff1d6;font-size:1.1em}
.cv-resumen strong{min-width:110px;text-align:right}
.cv-gen{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border-radius:10px;background:#fff1d6}
.cv-gen input{width:80px}
tr.cv-propio td{background:#eef6f4}
.tabla--chica td,.tabla--chica th{font-size:13px;padding:6px 8px}
@media (max-width:600px){.cv-resumen>div{grid-template-columns:1fr auto}.cv-resumen>div>span:nth-child(2){display:none}}
/* Regalos de proveedor entregados */
.regalos-cli{margin-top:12px;padding:10px 12px;border-radius:12px;background:#fff8e6;border:1px solid #f2dfab}
.regalos-cli__cab{display:flex;justify-content:space-between;align-items:center;gap:8px}
.regalos-cli ul{list-style:none;margin:6px 0 0;padding:0}
.regalos-cli li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 0;border-top:1px dashed #ecd9a5}
.regalos-cli li:first-child{border-top:0}
#fReg [hidden]{display:none !important}
#fAp [hidden],.pr-edit #prVet[hidden]{display:none !important}
.mov-oculto{opacity:.65}
/* Conciliación del Club y Mis autorizaciones */
.con-res{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:10px}
.con-res>div{background:#faf6f0;border:1px solid var(--borde,#e6dccf);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:2px}
.con-res span{font-size:13px;color:#6b5a4a}.con-res strong{font-size:20px}.con-res small{font-size:12px;color:#6b5a4a}
.con-res .con-mal{background:#fde2e0;border-color:#f3b4ae}.con-res .con-mal strong{color:#b3261e}
.con-sec summary{cursor:pointer;font-size:17px;padding:4px 0}
.con-fila-mal td{background:#fde2e0;color:#8f1d14}
.con-fila-av td{background:#fff6e0}
.chip-rojo{background:#b3261e;color:#fff;border-radius:999px;padding:1px 8px;font-size:12px}
.num-pes{display:inline-block;min-width:20px;padding:0 6px;border-radius:999px;background:#b3261e;color:#fff;font-size:12px;text-align:center}
.aut-fila{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0}
.con-sec td:last-child{min-width:240px}
