/* Lo propio de Mensualidades sobre estilo.css y producto.css (los mismos de Inventario). */
.titulo-fila{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
.titulo-fila h2{margin:0}
.fila-clic{cursor:pointer}.fila-clic:focus-visible{outline:2px solid var(--lima);outline-offset:2px}
.pildora{flex:none;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap;border:1px solid transparent}
.pildora.verde{color:#a7f3c4;background:rgba(126,226,168,.12);border-color:rgba(126,226,168,.3)}
.pildora.ambar{color:#f5d68a;background:rgba(245,196,81,.12);border-color:rgba(245,196,81,.35)}
.pildora.rojo{color:#ffb4aa;background:rgba(255,122,107,.12);border-color:rgba(255,122,107,.35)}
.pildora.gris{color:var(--tinta-baja);background:var(--sup-2);border-color:var(--borde)}
.estado-socio{margin:10px 0 4px;padding:10px 14px;border-radius:12px;font-weight:700;font-size:15px}
.estado-socio.verde{background:rgba(126,226,168,.12);color:#a7f3c4}.estado-socio.ambar{background:rgba(245,196,81,.12);color:#f5d68a}
.estado-socio.rojo{background:rgba(255,122,107,.12);color:#ffb4aa}.estado-socio.gris{background:var(--sup-2);color:var(--tinta-baja)}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#d-ficha,#d-socio,#d-plan{width:min(600px,calc(100vw - 32px))}
.monto{text-align:right;font-weight:700;font-size:17px;white-space:nowrap}.monto small{display:block;font-weight:500;font-size:12px;color:var(--tinta-baja)}
.cuadro.aviso b{color:var(--ambar)}.cuadro.alerta b{color:var(--rojo)}
/* Resultado de la entrada: grande, para verlo de lejos en la recepción */
dialog.resultado{text-align:center;width:min(420px,calc(100vw - 32px))}
.resultado .sello{width:96px;height:96px;margin:4px auto 10px;border-radius:50%;display:grid;place-items:center;font-size:52px;font-weight:800}
.resultado.ok .sello{background:rgba(126,226,168,.16);color:#7ee2a8;box-shadow:0 0 0 6px rgba(126,226,168,.08)}
.resultado.no .sello{background:rgba(255,122,107,.16);color:#ff7a6b;box-shadow:0 0 0 6px rgba(255,122,107,.08)}
.resultado h3{font-size:24px;margin:6px 0}
.resultado p{color:var(--tinta-media);margin:0 0 14px}
@media (max-width:480px){.dos{grid-template-columns:1fr}.titulo-fila .btn{padding:9px 14px}}
@media (prefers-reduced-motion:no-preference){dialog.resultado[open] .sello{animation:sello .28s cubic-bezier(.2,1.4,.4,1)}}
@keyframes sello{from{transform:scale(.6);opacity:0}}
/* Lo propio del Taller */
.pildora.azul{color:#bcd7ff;background:rgba(114,183,255,.12);border-color:rgba(114,183,255,.35)}
.pildora.lila{color:#dccbff;background:rgba(195,160,255,.12);border-color:rgba(195,160,255,.35)}
.estado-socio.azul{background:rgba(114,183,255,.12);color:#bcd7ff}.estado-socio.lila{background:rgba(195,160,255,.12);color:#dccbff}
.orden-num{font-variant-numeric:tabular-nums;color:var(--tinta-baja);font-weight:600;margin-right:6px}
.atrasada{color:var(--rojo);font-weight:700}
.chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chips .chip{flex:none}
textarea{width:100%;font:inherit;color:var(--tinta);background:var(--lienzo);border:1px solid var(--borde-fuerte);border-radius:12px;padding:11px 12px;margin-top:4px;min-height:70px;resize:vertical}
textarea:focus{outline:2px solid var(--lima);outline-offset:1px;border-color:transparent}
.bloque{border-top:1px solid var(--borde);margin-top:16px;padding-top:12px}
.historial .nota-interna{border-style:dashed}
.saldo{display:flex;gap:18px;flex-wrap:wrap;margin:10px 0}.saldo div{display:flex;flex-direction:column}.saldo span{font-size:12px;color:var(--tinta-baja)}.saldo b{font-size:20px}
#d-orden,#d-nueva{width:min(640px,calc(100vw - 32px))}
/* Lo propio del Menú */
.tablero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start;margin:10px 0}
.tablero h3{display:flex;align-items:center;gap:8px;margin:6px 0 10px}
.cuenta{font-size:12px;background:var(--sup-2);border:1px solid var(--borde);border-radius:999px;padding:1px 9px;color:var(--tinta-media)}
.pedido-card .lineas{margin:8px 0 0;padding:0;list-style:none;font-size:14px}.pedido-card .lineas li{padding:2px 0}
.pedido-card .notas{margin-top:6px;font-size:13px;color:var(--ambar)}
.pedido-card.nuevo{border-color:var(--lima);box-shadow:0 0 0 1px var(--lima) inset}
.pedido-card .acc{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.categoria h3{margin:18px 0 8px}
.plato-fila .der{display:flex;gap:6px;align-items:center;flex:none}
.agotado-btn[aria-pressed=true]{background:rgba(255,122,107,.15);color:#ffb4aa;border-color:rgba(255,122,107,.4)}
.elegir{max-height:46vh;overflow:auto;margin:8px 0}
.elegir .item{padding:10px 12px}
@media (max-width:900px){.tablero{grid-template-columns:1fr}}
@media (prefers-reduced-motion:no-preference){.pedido-card.nuevo{animation:entra .4s ease-out}}
@keyframes entra{from{transform:translateY(-6px);opacity:0}}
@media(min-width:900px){#app>.tabs::after{content:'Consultorio · tu consulta en orden'}}
/* Lo propio del Consultorio */
.dia-nav{display:flex;gap:8px;align-items:center;margin:6px 0 10px;flex-wrap:wrap}.dia-nav input{width:auto;margin:0}
.hora{font-variant-numeric:tabular-nums;font-weight:800;font-size:17px;min-width:56px;color:var(--lima)}
.cita-fila{display:flex;gap:12px;align-items:flex-start}.cita-fila .arriba{flex:1}
.ficha-cab{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.alerta-clinica{margin:10px 0;padding:10px 14px;border-radius:12px;background:rgba(255,122,107,.12);border:1px solid rgba(255,122,107,.35);color:#ffb4aa;font-weight:700}
.tres{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px}
#d-ficha{width:min(820px,calc(100vw - 24px))}
/* Odontograma: dos arcadas, cada diente un botón con su número y el color de su estado */
.odontograma{display:grid;gap:10px;margin:8px 0;overflow-x:auto}
.arcada{display:grid;grid-template-columns:repeat(16,minmax(30px,1fr));gap:4px;min-width:520px}
.arcada.temp{grid-template-columns:repeat(10,minmax(30px,1fr));min-width:330px;max-width:520px;margin:0 auto}
.diente{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0 5px;border-radius:10px;border:1px solid var(--borde-fuerte);background:var(--sup-2);color:var(--tinta);cursor:pointer;font:600 11px 'Geist',sans-serif}
.diente i{width:20px;height:20px;border-radius:6px;background:#eef8f2;border:2px solid #b9cfc2}
.diente:focus-visible{outline:2px solid var(--lima);outline-offset:2px}
.diente.medio{margin-right:8px}
.d-caries i{background:#ff7a6b;border-color:#ff7a6b}.d-obturado i{background:#72b7ff;border-color:#72b7ff}.d-endodoncia i{background:#c3a0ff;border-color:#c3a0ff}
.d-corona i{background:#f5c451;border-color:#f5c451}.d-extraer i{background:#fff;border-color:#ff7a6b;box-shadow:inset 0 0 0 3px #ff7a6b}
.d-ausente i{background:transparent;border-style:dashed;border-color:#93aca2}.diente.d-ausente{opacity:.6}
.d-implante i{background:#7ee2a8;border-color:#7ee2a8}.d-protesis i{background:#dffb71;border-color:#dffb71}
.diente .nota-dot{position:absolute;top:3px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--lima)}
.leyenda{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px;color:var(--tinta-baja)}.leyenda span{display:inline-flex;align-items:center;gap:5px}
:where(.leyenda) i{width:12px;height:12px;border-radius:4px;display:inline-block;background:#eef8f2;border:2px solid #b9cfc2}
.estados-diente{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:8px 0}
.estados-diente button{display:flex;align-items:center;gap:8px;text-align:left;padding:10px;border-radius:12px;border:1px solid var(--borde);background:var(--sup-2);color:var(--tinta);font:600 13px 'Geist',sans-serif;cursor:pointer}
.estados-diente button[aria-checked=true]{border-color:var(--lima);box-shadow:0 0 0 1px var(--lima) inset}
:where(.estados-diente) i{width:16px;height:16px;border-radius:5px;flex:none;background:#eef8f2;border:2px solid #b9cfc2}
@media (max-width:560px){.tres{grid-template-columns:1fr 1fr}.tres label:first-child{grid-column:1/-1}}
.pildora.pendiente{color:#f5d68a;background:rgba(245,196,81,.12);border-color:rgba(245,196,81,.35)}
.pildora.confirmada{color:#bcd7ff;background:rgba(114,183,255,.12);border-color:rgba(114,183,255,.35)}
.pildora.atendida{color:#a7f3c4;background:rgba(126,226,168,.12);border-color:rgba(126,226,168,.3)}
.pildora.no_vino,.pildora.cancelada{color:var(--tinta-baja);background:var(--sup-2);border-color:var(--borde)}
.link{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-align:left;text-decoration:underline;text-decoration-color:var(--borde-fuerte);text-underline-offset:3px}
.link:hover{text-decoration-color:var(--lima)}
.fila-boton{width:100%;background:none;border:0;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center}
.fila-boton:focus-visible{outline:2px solid var(--lima);outline-offset:4px;border-radius:8px}
@media (max-width:560px){.arcada,.arcada.temp{grid-template-columns:repeat(8,1fr);min-width:0;max-width:none}.arcada.temp{grid-template-columns:repeat(5,1fr)}.diente.medio{margin-right:0}.arcada+.arcada{margin-top:6px;padding-top:10px;border-top:1px dashed var(--borde)}}
