/* Cotizar un servicio desde el panel del cliente (prefijo .qf): banner con los 5 pasos, Detalles, Fecha y horario, Revisión y cotización y Confirmación.
   Responde al ancho del contenido (container queries): 2 columnas con la tarjeta lateral a la derecha y, en pantallas angostas, una sola. */
.qf{--qf-ink:#0b1b3d;--qf-mut:#667691;--qf-line:#e3eaf4;--qf-blue:#0b63f6;--qf-blue-d:#0850c9;--qf-soft:#eef4ff;--qf-ok:#138a4a;--qf-ok-soft:#e2f6e9;--qf-bad:#d12c3d;--qf-bad-soft:#fde6e8;--qf-warn:#b86e00;--qf-warn-soft:#fff1d6;container-type:inline-size;container-name:qf;display:grid;gap:16px;color:var(--qf-ink);font-size:14px;min-width:0}
.qf *{box-sizing:border-box}
.qf h2,.qf h3,.qf h4,.qf p,.qf ul,.qf ol,.qf dl,.qf dd,.qf blockquote{margin:0;letter-spacing:0}
.qf ul,.qf ol{padding:0;list-style:none}
body[data-page="panel"] .qf p{color:inherit}
.qf img{display:block;max-width:100%}
.qf button{font:inherit;cursor:pointer}
.qf button:disabled{cursor:not-allowed}
.qf small{font-size:12.5px;line-height:1.4;color:var(--qf-mut)}
.qf-i{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.qf-soft{color:var(--qf-mut);font-size:13px}
.qf-hint{margin-top:8px;font-size:12.5px;color:var(--qf-mut)}

/* ---------- Banner con los 5 pasos ---------- */
.qf-banner{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,540px);gap:18px;align-items:center;min-height:168px;padding:22px 26px;border-radius:20px;background:linear-gradient(90deg,rgba(7,30,76,.86),rgba(7,30,76,.4)),url(/assets/exp-hero-1200.webp) center/cover;color:#fff}
body[data-page="panel"] .qf .qf-banner-copy h2{font-size:30px;line-height:1.15;font-weight:800;color:#fff}.qf-banner h2:focus{outline:0}
body[data-page="panel"] .qf .qf-banner-copy p{margin-top:8px;max-width:46ch;font-size:15px;line-height:1.5;color:rgba(255,255,255,.92)}
.qf-stepcard{padding:16px 14px 12px;border-radius:16px;background:#fff;color:var(--qf-ink);box-shadow:0 8px 24px rgba(5,20,50,.25)}
.qf-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.qf-step{position:relative;text-align:center}
.qf-step>button,.qf-step>span{display:grid;justify-items:center;gap:6px;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit}
.qf-step::after{content:"";position:absolute;top:14px;left:calc(50% + 18px);right:calc(-50% + 18px);height:2px;background:#dfe6f2}
.qf-step:last-child::after{display:none}
.qf-step.is-done::after{background:#16a864}
.qf-dot{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e6ecf5;color:var(--qf-mut);font-weight:800;font-size:14px}
.qf-dot .qf-i{width:16px;height:16px;stroke-width:3}
.qf-step.is-done .qf-dot{background:#16a864;color:#fff}
.qf-step.is-now .qf-dot{background:var(--qf-blue);color:#fff;box-shadow:0 0 0 4px rgba(11,99,246,.18)}
.qf-step-l{font-size:12px;line-height:1.25;color:var(--qf-mut);font-weight:600}
.qf-step.is-now .qf-step-l{color:var(--qf-ink);font-weight:800}
.qf-step>button:hover .qf-step-l{color:var(--qf-blue)}

/* ---------- Estructura ---------- */
.qf-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}
.qf-main,.qf-side{display:grid;gap:14px;min-width:0}
.qf-card{display:block;min-width:0;padding:18px 20px;border:1px solid var(--qf-line);border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(18,52,110,.06)}
.qf-ch{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}
.qf-ch h3{font-size:17px;font-weight:800;line-height:1.25}
.qf-ch p{margin-top:3px;font-size:13px;color:var(--qf-mut);line-height:1.45}
.qf-ci{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--qf-soft);color:var(--qf-blue);flex:none}
.qf-ci.is-small{width:30px;height:30px;border-radius:10px}
.qf-ci .qf-i{width:20px;height:20px}
.qf-tag{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 10px;border-radius:999px;font-size:11.5px;font-weight:800;font-style:normal;vertical-align:middle;white-space:nowrap}
.qf-tag .qf-i{width:12px;height:12px;stroke-width:3}
.qf-tag.is-ok{background:var(--qf-ok-soft);color:#0b6b38}
.qf-tag.is-bad{background:var(--qf-bad-soft);color:#a8202e}
.qf-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.qf-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}
.qf-chip .qf-i{width:14px;height:14px}
.qf-chip.is-ok{background:var(--qf-ok-soft);color:var(--qf-ok)}
.qf-chip.is-info{background:#e6f0ff;color:var(--qf-blue)}
.qf-nav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.qf-error{padding:10px 14px;border-radius:12px;background:var(--qf-bad-soft);color:#a8202e;font-weight:700}.qf-warn{margin:0 0 12px;padding:10px 14px;border-radius:12px;background:var(--qf-warn-soft);color:#7a4700;font-weight:600;font-size:13.5px;line-height:1.45}.qf-warn .qf-link{color:#7a4700}

/* ---------- Botones ---------- */
.qf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;border-radius:12px;border:1px solid transparent;font-weight:800;font-size:14.5px;text-decoration:none;white-space:nowrap}
.qf-btn.is-solid{background:var(--qf-blue);color:#fff}.qf-btn.is-solid:hover:not(:disabled){background:var(--qf-blue-d)}
.qf-btn.is-solid:disabled{opacity:.6}
.qf-btn.is-outline{background:#fff;border-color:#bcd0f3;color:var(--qf-blue)}.qf-btn.is-outline:hover{background:var(--qf-soft)}
.qf-btn.is-soft{background:var(--qf-soft);color:var(--qf-blue);width:100%}
.qf-btn.is-white{background:#fff;color:var(--qf-blue)}
.qf-btn.is-small{min-height:36px;padding:0 14px;font-size:13px}
.qf-link{border:0;background:none;padding:0;color:var(--qf-blue);font-weight:700;text-decoration:underline}
.qf-edit{display:inline-flex;align-items:center;gap:4px;border:0;background:none;padding:0;color:var(--qf-blue);font-size:12.5px;font-weight:700}.qf-edit .qf-i{width:13px;height:13px}
.qf-edit.is-tiny{margin-left:8px}

/* ---------- Paso 2: servicio, necesidades, estado, textos y atención ---------- */
.qf-svc{display:grid;grid-template-columns:200px minmax(0,1fr) minmax(0,260px);gap:18px;align-items:center}
.qf-svc-ph{display:block;border-radius:14px;overflow:hidden;aspect-ratio:4/3;background:var(--qf-soft)}.qf-svc-ph img{width:100%;height:100%;object-fit:cover}
.qf-svc-b h3{font-size:22px;font-weight:800;line-height:1.2}.qf-svc-b p{margin-top:6px;color:var(--qf-mut);line-height:1.5}
.qf-good{display:grid;gap:10px}.qf-good li{display:flex;align-items:flex-start;gap:8px;font-weight:600;line-height:1.35}.qf-good .qf-i,.qf-mini .qf-i,.qf-quote ul .qf-i,.qf-ready .qf-i,.qf-band-note .qf-i{width:16px;height:16px;padding:2px;border-radius:50%;background:var(--qf-ok-soft);color:var(--qf-ok);stroke-width:3.2;margin-top:1px}
.qf-needs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.qf-need{position:relative;display:grid;gap:4px;justify-items:start;padding:14px 44px 14px 14px;border:1.5px solid var(--qf-line);border-radius:14px;background:#fff;text-align:left;color:var(--qf-ink)}
.qf-need:hover{border-color:#bcd0f3}.qf-need.is-on{border-color:var(--qf-blue);background:var(--qf-soft)}
.qf-need-ic{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e6f0ff;color:var(--qf-blue);margin-bottom:4px}.qf-need-ic .qf-i{width:20px;height:20px}
.qf-need b{font-size:14.5px;line-height:1.25}
.qf-check{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:2px solid #c5d3ea;background:#fff;color:#fff}
.is-on>.qf-check{background:var(--qf-blue);border-color:var(--qf-blue)}.qf-check .qf-i{width:13px;height:13px;stroke-width:3.4}
.qf-states{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.qf-states-g{display:contents}
.qf-state{position:relative;display:grid;gap:4px;justify-items:start;align-content:start;padding:8px 8px 12px;border:1.5px solid var(--qf-line);border-radius:14px;background:#fff;text-align:left;color:var(--qf-ink)}
.qf-state.is-on{border-color:var(--qf-blue);background:var(--qf-soft)}
.qf-state b{font-size:13.5px;line-height:1.25;padding:0 4px}.qf-state small{padding:0 4px}
.qf-state .qf-check{top:14px;right:14px}
.qf-art{width:100%;height:auto;border-radius:9px}
.qf-upload{position:relative;display:grid;gap:4px;justify-items:center;align-content:center;padding:14px 10px;border:1.5px dashed #a9c2ee;border-radius:14px;background:#f8fbff;text-align:center;color:var(--qf-ink);cursor:pointer}
.qf-upload:focus-within{outline:3px solid var(--qf-blue);outline-offset:2px}.qf-upload .qf-i{width:30px;height:30px;color:var(--qf-blue)}.qf-upload b{font-size:13.5px}.qf-upload .qf-btn{margin-top:4px;padding:0 10px;min-height:34px;font-size:12.5px;white-space:normal;text-align:center}.qf-upload small{overflow-wrap:anywhere}
body[data-page="panel"] .qf .qf-upload input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;padding:0;border:0;min-height:0;cursor:pointer}
.qf-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.qf-files li{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 12px;border-radius:999px;background:var(--qf-soft);font-size:12.5px;font-weight:600}
.qf-files button{display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:50%;background:#fff;color:var(--qf-mut)}.qf-files .qf-i{width:12px;height:12px}
body[data-page="panel"] .qf .qf-text{display:block;width:100%;min-height:110px;padding:12px 14px;border:1.5px solid var(--qf-line);border-radius:12px;background:#fff;color:var(--qf-ink);font:inherit;line-height:1.5;resize:vertical}
body[data-page="panel"] .qf .qf-text:focus{outline:0;border-color:var(--qf-blue);box-shadow:0 0 0 3px rgba(11,99,246,.15)}
.qf-count{display:block;margin-top:6px;text-align:right;font-size:12px;color:var(--qf-mut)}
.qf-attn{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.qf-opt{position:relative;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:10px;align-items:start;padding:14px;border:1.5px solid var(--qf-line);border-radius:14px;background:#fff;text-align:left;color:var(--qf-ink)}
.qf-opt.is-on{border-color:var(--qf-blue);background:var(--qf-soft)}.qf-opt:disabled{opacity:.55}
.qf-radio{display:grid;place-items:center;width:20px;height:20px;margin-top:2px;border-radius:50%;border:2px solid #b8c8e6;background:#fff}.qf-radio i{width:10px;height:10px;border-radius:50%;background:var(--qf-blue)}
.is-on>.qf-radio{border-color:var(--qf-blue)}
.qf-opt-ic{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e6f0ff;color:var(--qf-blue)}.qf-opt-ic.is-urgente{background:var(--qf-bad-soft);color:var(--qf-bad)}.qf-opt-ic.is-repetir{background:#eeeafe;color:#6d4fe0}
.qf-opt-b{display:grid;gap:4px;min-width:0}.qf-opt-b>b{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:14.5px;line-height:1.3}.qf-opt-b>b .qf-tag{margin-left:0}.qf-opt-b small{display:flex;align-items:flex-start;gap:5px}.qf-opt-b small .qf-i{width:13px;height:13px;margin-top:2px}

/* ---------- Columna derecha ---------- */
.qf-sc{padding:16px 18px}
.qf-sh{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.qf-sh h3{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:800}.qf-sh h3 .qf-i{width:18px;height:18px;color:var(--qf-blue)}
.qf-row{display:grid;gap:5px;padding:10px 0;border-top:1px solid var(--qf-line)}.qf-row:first-of-type{border-top:0;padding-top:0}
.qf-row>small{display:flex;align-items:center;font-weight:600}
.qf-rowv{display:flex;align-items:center;gap:10px;min-width:0;font-size:14px}.qf-rowv b{overflow-wrap:anywhere}.qf-rowv small{display:block}
.qf-rowi{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--qf-soft);color:var(--qf-blue);flex:none}.qf-rowi .qf-i{width:15px;height:15px}
.qf-thumb{display:block;width:46px;height:46px;border-radius:10px;overflow:hidden;background:var(--qf-soft);flex:none}.qf-thumb img{width:100%;height:100%;object-fit:cover}.qf-thumb.is-big{width:64px;height:54px}
.qf-mini{display:grid;gap:6px}.qf-mini li{display:flex;align-items:center;gap:8px;font-weight:600}
.qf-note{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:12px;border-radius:12px;background:var(--qf-soft);color:#1b4aa3;font-size:13px;line-height:1.45}.qf-note .qf-i{width:20px;height:20px;color:var(--qf-blue)}
.qf-why{display:grid;gap:12px}.qf-why li{display:flex;gap:10px;align-items:flex-start}.qf-why b{display:block;font-size:14px;line-height:1.3}.qf-why small{display:block;margin-top:2px}
.qf-n{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--qf-soft);color:var(--qf-blue);font-weight:800;font-size:13px;flex:none}
.qf-last{display:flex;align-items:center;gap:12px;margin-bottom:12px}.qf-last b{display:block}.qf-last em{display:block;margin-top:2px;font-style:normal}

/* ---------- Paso 3: calendario y horas ---------- */
.qf-pick{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:22px;align-items:start}
.qf-cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.qf-cal-h b{font-size:15px}
.qf-cal-h button{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--qf-line);border-radius:50%;background:#fff;color:var(--qf-ink)}.qf-cal-h button:disabled{opacity:.35}
.qf-cal-w,.qf-cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.qf-cal-w{margin-bottom:6px}.qf-cal-w span{font-size:12px;font-weight:700;color:var(--qf-mut)}
.qf-day{position:relative;display:grid;place-items:center;height:38px;border:0;border-radius:50%;background:none;color:var(--qf-ink);font-weight:700}
.qf-day:hover:not(:disabled){background:var(--qf-soft)}.qf-day.is-off{pointer-events:none}.qf-day.is-past{color:#b8c3d6}.qf-day.is-today{box-shadow:inset 0 0 0 1.5px #bcd0f3}
.qf-day.is-on{background:var(--qf-blue);color:#fff}.qf-day i{position:absolute;bottom:4px;width:5px;height:5px;border-radius:50%;background:var(--qf-blue)}.qf-day.is-on i{background:#fff}
.qf-legend{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:var(--qf-blue)}
.qf-slots-h{display:flex;align-items:center;gap:8px;margin-bottom:8px}.qf-slots-h b{font-size:15px}
.qf-when{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}
.qf-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:var(--qf-soft);color:var(--qf-blue);font-weight:800;font-size:13px}.qf-pill .qf-i{width:15px;height:15px}
.qf-where{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--qf-mut)}.qf-where .qf-i{width:15px;height:15px}
.qf-band{margin-bottom:10px}.qf-band h4{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:13px;color:var(--qf-mut)}.qf-band h4 .qf-i{width:15px;height:15px}
.qf-hours{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.qf-hour{display:grid;gap:1px;justify-items:center;padding:8px 4px;border:1.5px solid var(--qf-line);border-radius:12px;background:#fff;color:var(--qf-ink)}.qf-hour b{font-size:15px}.qf-hour small{font-size:11.5px}
.qf-hour:hover:not(:disabled){border-color:#bcd0f3}.qf-hour.is-on{background:var(--qf-blue);border-color:var(--qf-blue);color:#fff}.qf-hour.is-on small{color:rgba(255,255,255,.9)}
.qf-hour:disabled{background:#f3f6fb;color:#a3afc4}.qf-hour:disabled b{text-decoration:line-through}
.qf-slots-empty{display:grid;justify-items:center;gap:8px;padding:30px 12px;border:1.5px dashed var(--qf-line);border-radius:14px;color:var(--qf-mut);text-align:center}.qf-slots-empty .qf-i{width:28px;height:28px}
.qf-band-note{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,280px);gap:16px;align-items:center;background:#f2f7ff}
.qf-big{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#dfeaff;color:var(--qf-blue)}.qf-big .qf-i{width:26px;height:26px}
.qf-band-note h3{font-size:16px;font-weight:800}.qf-band-note p{margin-top:4px;color:var(--qf-mut);line-height:1.5}
.qf-band-note ul{display:grid;gap:8px}.qf-band-note li{display:flex;gap:8px;align-items:flex-start;font-weight:600;font-size:13px}

/* ---------- Paso 4: opciones, piscinero, extras y resumen ---------- */
.qf-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.qf-quote{position:relative;display:grid;gap:8px;align-content:start;padding:16px;border:1.5px solid var(--qf-line);border-radius:14px;background:#fff;text-align:left;color:var(--qf-ink)}
.qf-quote.is-on{border-color:var(--qf-blue);background:var(--qf-soft)}.qf-quote:disabled{opacity:.55}
.qf-quote .qf-radio{position:absolute;top:14px;right:14px}
.qf-quote>b{font-size:16px}.qf-quote .qf-tag{margin:0;justify-self:start}
.qf-sub{font-style:normal;font-weight:700;color:var(--qf-mut);font-size:13px}
.qf-quote ul{display:grid;gap:6px}.qf-quote ul li{display:flex;align-items:flex-start;gap:7px;font-size:13px;line-height:1.35}
.qf-price{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:4px;padding-top:10px;border-top:1px solid var(--qf-line)}.qf-price small{font-size:12px}.qf-price b{font-size:15px;color:var(--qf-ink)}
.qf-price.is-small{justify-content:flex-start;margin:4px 0 0;padding:0;border:0;font-size:12.5px;font-weight:700;color:var(--qf-mut)}
.qf-pro{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,300px);gap:16px;align-items:center}.qf-pro.is-empty{grid-template-columns:auto minmax(0,1fr) auto}
.qf-avatar{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#dbe8ff;color:var(--qf-blue);font-weight:800;font-size:20px;overflow:hidden}.qf-avatar img{width:100%;height:100%;object-fit:cover}.qf-avatar .qf-i{width:28px;height:28px}
.qf-pro b{font-size:16px}.qf-rate{display:flex;align-items:center;gap:5px;margin-top:3px;font-size:13px}.qf-rate .qf-i{width:15px;height:15px;color:#f2a30f;fill:#f2a30f}
.qf-facts{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px}.qf-facts li{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--qf-mut)}.qf-facts .qf-i{width:14px;height:14px}
.qf-pro blockquote{padding-left:14px;border-left:3px solid #d5e3ff;color:var(--qf-mut);font-style:italic;line-height:1.5;overflow-wrap:anywhere}
.qf-extras{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.qf-extra{position:relative;display:grid;gap:5px;justify-items:start;padding:12px;border:1.5px solid var(--qf-line);border-radius:14px;background:#fff;text-align:left;color:var(--qf-ink)}.qf-extra.is-on{border-color:var(--qf-blue);background:var(--qf-soft)}
.qf-extra .qf-check{top:10px;left:10px;right:auto}.qf-extra .qf-thumb{width:100%;height:84px}.qf-extra b{font-size:14px}
.qf-ready{display:grid;gap:10px}.qf-ready-ph{display:block;border-radius:12px;overflow:hidden;aspect-ratio:16/9}.qf-ready-ph img{width:100%;height:100%;object-fit:cover}.qf-ready h3{font-size:15px;font-weight:800}.qf-ready ul{display:grid;gap:7px}.qf-ready li{display:flex;gap:8px;align-items:flex-start;font-weight:600;font-size:13px}
.qf-field{display:grid;gap:5px;padding-top:10px;border-top:1px solid var(--qf-line);font-size:12.5px;font-weight:600;color:var(--qf-mut)}
body[data-page="panel"] .qf .qf-field input{min-height:42px;padding:0 12px;border:1.5px solid var(--qf-line);border-radius:10px;background:#fff;color:var(--qf-ink);font:inherit}
.qf-clip{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:13px}
.qf-price-box{margin-top:12px;padding:12px 14px;border-radius:12px;background:#f6f9ff}.qf-price-box h4{display:flex;align-items:center;gap:6px;font-size:14px;margin-bottom:8px}.qf-price-box h4 .qf-i{width:16px;height:16px;color:var(--qf-blue)}
.qf-price-box dl{display:grid;gap:6px}.qf-price-box dl div{display:flex;justify-content:space-between;gap:10px;font-size:13px}.qf-price-box dt{color:var(--qf-mut)}.qf-price-box dd{font-weight:700}
.qf-price-box .is-total{margin-top:4px;padding-top:8px;border-top:1px solid var(--qf-line);font-size:15px}.qf-price-box .is-total dt{color:var(--qf-ink);font-weight:800}.qf-price-box p{margin-top:8px;font-size:12px;line-height:1.4;color:var(--qf-mut)}

/* ---------- Paso 5: confirmación ---------- */
.qf-hero-ok{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center;padding:26px 28px}
.qf-ok{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:#16a864;color:#fff;box-shadow:0 0 0 10px rgba(22,168,100,.14)}.qf-ok .qf-i{width:42px;height:42px;stroke-width:3}
.qf-hero-ok h3{font-size:30px;font-weight:800;line-height:1.1}.qf-hero-ok p{margin-top:8px;line-height:1.55;color:var(--qf-mut)}.qf-hero-ok p b{color:var(--qf-ink)}
.qf-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.qf-mini-c{display:flex;align-items:center;gap:12px}.qf-mini-c b{display:block;font-size:14.5px;line-height:1.3}.qf-mini-c small{display:block}
.qf-stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.qf-stages li{position:relative;display:grid;gap:4px;align-content:start;justify-items:start;padding-top:2px}
.qf-stages li::before{content:"";position:absolute;top:15px;left:34px;right:-10px;height:2px;background:#dfe6f2}.qf-stages li:last-child::before{display:none}.qf-stages li.is-done::before{background:#16a864}
.qf-stages b{font-size:14px;line-height:1.25}.qf-stages em{font-style:normal;font-size:12px;font-weight:700;color:var(--qf-blue)}
.qf-stages li.is-done .qf-dot{background:#16a864;color:#fff}.qf-stages li.is-now .qf-dot{background:var(--qf-blue);color:#fff;box-shadow:0 0 0 4px rgba(11,99,246,.18)}
.qf-gos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.qf-go{display:flex;align-items:center;gap:12px;padding:14px;border:1.5px solid var(--qf-line);border-radius:14px;background:#fff;text-align:left;color:var(--qf-ink)}.qf-go:hover{border-color:#bcd0f3;background:var(--qf-soft)}
.qf-go>span:nth-child(2){display:grid;gap:2px;flex:1;min-width:0}.qf-go b{font-size:14.5px}
.qf-next{display:grid;gap:8px}.qf-next .qf-chip{justify-self:start}.qf-next p{color:var(--qf-mut);line-height:1.5}
.qf-notify{display:grid;gap:12px;margin-top:10px}.qf-notify li{display:flex;gap:10px;align-items:flex-start}.qf-notify .qf-i{width:20px;height:20px;color:var(--qf-blue)}.qf-notify b{display:block}
.qf-end{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:24px 28px;border-radius:18px;background:linear-gradient(90deg,rgba(7,30,76,.88),rgba(7,30,76,.45)),url(/assets/exp-hero-1200.webp) center/cover;color:#fff}
.qf-end h3{font-size:22px;font-weight:800;color:#fff}body[data-page="panel"] .qf .qf-end p{margin-top:4px;color:rgba(255,255,255,.92)}body[data-page="panel"] .qf .qf-end h3{color:#fff}
.qf-empty{display:grid;justify-items:center;gap:10px;padding:40px 20px;text-align:center}.qf-empty .qf-i{width:34px;height:34px;color:var(--qf-blue)}.qf-empty h3{font-size:19px}.qf-empty p{color:var(--qf-mut)}.qf-empty-go{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}

/* ---------- Anchos intermedios ---------- */
@container qf (max-width:1180px){
 .qf-layout{grid-template-columns:minmax(0,1fr)}
 .qf-side{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
 .qf-states{grid-template-columns:repeat(3,minmax(0,1fr))}
 .qf-extras{grid-template-columns:repeat(2,minmax(0,1fr))}
 .qf-svc{grid-template-columns:180px minmax(0,1fr)}.qf-good{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container qf (max-width:900px){
 .qf-banner{grid-template-columns:minmax(0,1fr)}
 .qf-needs{grid-template-columns:repeat(2,minmax(0,1fr))}
 .qf-attn,.qf-quotes,.qf-gos,.qf-trio{grid-template-columns:minmax(0,1fr)}
 .qf-pick{grid-template-columns:minmax(0,1fr)}
 .qf-band-note{grid-template-columns:auto minmax(0,1fr)}.qf-band-note ul{grid-column:1/-1}
 .qf-pro{grid-template-columns:auto minmax(0,1fr)}.qf-pro blockquote,.qf-pro .qf-btn{grid-column:1/-1}
 .qf-stages{grid-template-columns:minmax(0,1fr);gap:14px}.qf-stages li{grid-template-columns:auto minmax(0,1fr);column-gap:12px}.qf-stages li .qf-dot{grid-row:1/4}.qf-stages li::before{display:none}
}
@container qf (max-width:620px){
 .qf-banner{padding:18px;min-height:0}.qf-banner-copy h2{font-size:24px}
 .qf-step-l{display:none}.qf-step.is-now .qf-step-l{display:block;position:absolute;top:36px;left:50%;transform:translateX(-50%);width:max-content;max-width:150px}.qf-stepcard{padding-bottom:36px}
 .qf-side{grid-template-columns:minmax(0,1fr)}
 .qf-needs,.qf-extras{grid-template-columns:minmax(0,1fr)}
 .qf-states{grid-template-columns:repeat(2,minmax(0,1fr))}
 .qf-svc{grid-template-columns:minmax(0,1fr)}.qf-good{grid-template-columns:minmax(0,1fr)}
 .qf-hours{grid-template-columns:repeat(2,minmax(0,1fr))}
 .qf-hero-ok{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}.qf-hero-ok h3{font-size:25px}
 .qf-nav .qf-btn{width:100%}
 .qf-card{padding:16px}
}
@media print{.qf-nav{display:none}}
/* Aviso de lo que llegó desde «Reservar como la última vez» (día, hora y notas ya cargados). */
.qf-seed{display:flex;align-items:flex-start;gap:8px;margin:0 0 14px;padding:10px 14px;border-radius:12px;background:var(--qf-soft);color:var(--qf-blue-d);font-size:13.5px;font-weight:600;line-height:1.45}
.qf-seed .qf-i{width:18px;height:18px;flex:none;margin-top:1px}
