/* Venta por servicio: lista sobria, fechas como fichas y cantidad con botones grandes. */
.individual-services{--ind-ink:#243b4e;--ind-muted:#53616c;--ind-accent:#093d77;--ind-line:#d5e1eb;--ind-soft:#eef4fa;min-width:0;margin:20px 0;padding:0;border:0}
.individual-services[hidden]{display:none}
.individual-services>legend{padding:0;font-size:20px;font-weight:650;color:var(--ind-ink)}
.individual-help{margin:4px 0 8px;font-size:14px;color:var(--ind-muted)}
.individual-service{display:grid;gap:10px;padding:14px 0;border-top:1px solid var(--ind-line)}
.individual-service-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.individual-service-head p{display:grid;gap:2px;min-width:0;margin:0;overflow-wrap:anywhere}
.individual-service-head strong{font-size:16px;color:var(--ind-ink)}
.individual-service-head span{font-size:14px;color:var(--ind-muted);font-variant-numeric:tabular-nums}
.individual-subtotal{flex:none;font-size:16px;font-weight:650;color:var(--ind-accent);font-variant-numeric:tabular-nums}
.individual-dates{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.individual-date{position:relative;display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 12px;border:1px solid var(--ind-line);border-radius:10px;background:#fff;cursor:pointer;transition:border-color .15s,background-color .15s}
.individual-date input{flex:0 0 20px;width:20px;height:20px;margin:0;accent-color:var(--ind-accent)}
.individual-date span{display:grid;justify-items:start;min-width:0;text-align:left;white-space:nowrap;font-size:15px;font-weight:600;line-height:1.25;color:var(--ind-ink)}
.individual-services .individual-date small{display:block;margin:0;padding:0;background:none;border-radius:0;text-align:left;line-height:1.3;font-size:12.5px;font-weight:400;color:var(--ind-muted)}
.individual-date:hover{border-color:var(--ind-accent)}
.individual-date:has(:checked){border-color:var(--ind-accent);background:var(--ind-soft)}
.individual-date:has(:disabled:not(:checked)){cursor:default;opacity:.55;border-color:var(--ind-line);background:#fff}
.individual-services .individual-date.is-full small{color:#97400d}
.individual-note{margin:0;font-size:13px;color:var(--ind-muted)}
.individual-services .individual-quantity{display:inline-grid;grid-template-columns:44px 52px 44px;align-items:stretch;justify-self:start;width:auto;height:44px;margin:0;padding:0;border:1px solid var(--ind-line);border-radius:10px;overflow:hidden;background:#fff}
/* Reinicio explícito: el tema de cada agencia da relleno, altura y sombra a todos los botones. */
.individual-services .individual-quantity button{box-sizing:border-box;display:grid;place-items:center;width:44px;height:42px;min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:var(--ind-soft);color:var(--ind-accent);font:inherit;font-size:20px;font-weight:600;line-height:1;letter-spacing:0;text-transform:none;cursor:pointer;transform:none}
.individual-services .individual-quantity button:hover:not(:disabled){background:#dde9f4}
.individual-services .individual-quantity button:disabled{background:#f4f6f8;color:#a3afb9;cursor:default}
.individual-services .individual-quantity input{box-sizing:border-box;width:52px;height:42px;min-width:0;min-height:0;margin:0;padding:0;border:0;border-inline:1px solid var(--ind-line);border-radius:0;box-shadow:none;background:#fff;color:var(--ind-ink);font:inherit;font-size:16px;font-weight:600;text-align:center;-moz-appearance:textfield;appearance:textfield}
.individual-services .individual-quantity input::-webkit-inner-spin-button,.individual-services .individual-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.individual-service :focus-visible{outline:2px solid var(--ind-accent);outline-offset:2px}
.individual-date:has(:focus-visible){outline:2px solid var(--ind-accent);outline-offset:2px}
@media (max-width:420px){.individual-dates{grid-template-columns:repeat(2,minmax(0,1fr))}.individual-date{padding:8px 10px;gap:8px}}
@media (prefers-reduced-motion:reduce){.individual-date{transition:none}}
