/* PS Booking — «¿Te llevas algo en tu cita?» (PSB_Carry, beta50): la bolsa del portal, la bolsa de WooCommerce y
   Mis citas. Pocas reglas, en todas las páginas: así aparecen donde se abra la bolsa. */
.psb-carry { display: grid; gap: 8px; margin: 16px 0; padding: 14px; border-radius: 18px; background: linear-gradient(120deg, #fbf7f2 0%, #efe4d8 48%, #f8f1e9 100%); box-shadow: inset 0 0 0 1px rgba(191, 174, 158, .75); color: #000; }
.psb-carry__title { margin: 0 !important; font-size: 15px; font-weight: 600; }
.psb-carry__sub { margin: 0 !important; font-size: 13px; line-height: 1.5; color: #3d3833; }
.psb-carry__list { display: flex; gap: 10px; overflow-x: auto; padding: 2px 0 4px; scrollbar-width: thin; }
.psb-carry__card { flex: none; width: 140px; display: grid; background: #fff; border: 1px solid #e6dacb; border-radius: 14px; overflow: hidden; }
.psb-carry__img img { display: block; width: 100% !important; height: auto !important; aspect-ratio: 1; object-fit: cover; margin: 0 !important; }
.psb-carry__txt { display: grid; gap: 6px; padding: 8px 10px 10px; font-size: 13px; }
.psb-carry__txt b { font-size: 13px; line-height: 1.25; font-weight: 600; }
.psb-carry__add { justify-self: start; display: inline-flex; align-items: center; min-height: 30px; padding: 0 14px !important; border-radius: 999px !important; border: 0 !important; background: #000 !important; color: #fff !important; font-size: 12.5px !important; font-weight: 600 !important; text-decoration: none !important; text-transform: none !important; letter-spacing: 0 !important; cursor: pointer; }
.psb-carry__add:hover { background: #a39285 !important; }
.psb-carry__add.is-on { background: #fff !important; color: #000 !important; border: 1px solid #000 !important; cursor: default; }
.psb-carry__err { margin: 0 !important; font-size: 13px; color: #8a1f11; }
.psb-cita__carry { margin: 12px 0 0; padding: 12px 14px; border-radius: 14px; background: #f9f4f0; border: 1px solid #e6dacb; }
.psb-cita__carry small { display: block; margin: 0 0 4px; font-weight: 600; }
.psb-cita__carry ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 4px; font-size: 14px; }
.psb-cita__carry em { font-style: normal; font-size: 12px; padding: 1px 8px; margin-left: 6px; border-radius: 999px; background: #d3c7bb; }
.psb-cita__more { margin: 12px 0 0; }
.psb-cita__more summary { cursor: pointer; font-weight: 600; font-size: 14px; }
.psb-cita__more .psb-carry__sub { margin: 8px 0 !important; }

/* La página del producto del tema (PSB_Product_Page, beta51): el precio para socias y «Llevar en mi cita» */
.psb-pp-member { margin: 6px 0 16px !important; }
.psb-pp-member span { display: inline-flex; align-items: center; padding: 5px 13px; border-radius: 999px; background: #000; color: #fff; font-size: 12.5px; font-weight: 600; line-height: 1.3; letter-spacing: 0; text-transform: none; white-space: nowrap; }
.psb-carry-form { display: grid; gap: 6px; margin: 14px 0 0; max-width: 460px; }
.psb-carry-form__btn { display: inline-flex !important; align-items: center; justify-content: center; min-height: 46px; padding: 0 22px !important; border-radius: 999px !important; border: 1.5px solid #000 !important; background: #fff !important; color: #000 !important; font-size: 15px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important; cursor: pointer; }
.psb-carry-form__btn:hover { background: #000 !important; color: #fff !important; }
.psb-carry-form small { font-size: 13px; line-height: 1.5; color: #5c544d; }

/* Los puntos del Club PS que suma cada servicio y producto (PSB_Points_Note, beta52): el recuadro claro del Club PS,
   en la página del producto (en vez del de PS Lover) y en el panel del servicio del portal */
.psb-pts { display: flex; align-items: center; gap: 12px; margin: 0 0 1.1em; padding: 12px 16px; border-radius: 16px; background: linear-gradient(120deg, #fbf7f2 0%, #f3ebe2 55%, #f9f4ee 100%); box-shadow: inset 0 0 0 1px rgba(191, 174, 158, .6); color: #000; }
.psb-pts[hidden] { display: none !important; }
.psb-pts__ico { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: #fff; box-shadow: inset 0 0 0 1px rgba(191, 174, 158, .7); color: #000; }
.psb-pts__txt { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.psb-pts__title { margin: 0 !important; font-size: 15px; line-height: 1.4; color: #000; letter-spacing: 0; text-transform: none; }
.psb-pts__title strong { font-weight: 700; }
.psb-pts__sub { margin: 0 !important; font-size: 13px; line-height: 1.5; color: #5c544d; }
.psb-pts__sub a { color: #000 !important; font-weight: 600; text-decoration: underline !important; text-underline-offset: 3px; white-space: nowrap; }
.psb-pts--page { max-width: 560px; margin: 16px 0 18px !important; }

/* Los botones − y + de la cantidad son íconos de la letra del tema Cherie (cherie-font). El CSS «Letras de Pelu
   Studio» (Personalizar → CSS adicional) les ponía Instrument Sans y salían cuadraditos: se les devuelve su letra
   (beta52). El :is(#psb-qty, ...) le gana a ese CSS, que lleva un #id en su lista. */
html body :is(#psb-qty, .quantity) input.minus.minus,
html body :is(#psb-qty, .quantity) input.plus.plus { font-family: "cherie-font" !important; font-weight: 400 !important; }
