:root{--rojo:#c1272d;--rojo-oscuro:#9b1c22;--bg:#f6f3ef;--card:#ffffff;--texto:#1c1a19;--suave:#6f6a66;--borde:#e4ded7;--borde-fuerte:#cfc7bd;--ok:#1f7a45;--aviso:#8a6100;--radio:10px}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--bg);color:var(--texto);font-family:Segoe UI,system-ui,-apple-system,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}a{color:var(--rojo)}.envoltorio{max-width:720px;margin:0 auto;padding:0 16px 64px}.ancho{max-width:1080px}.cabecera{background:var(--rojo);color:#fff;padding:22px 0 24px;margin-bottom:22px}.cabecera .marca{font-size:11px;letter-spacing:3px;opacity:.85}.cabecera h1{font-size:24px;font-weight:700;margin-top:3px;letter-spacing:-.2px}.cabecera p{font-size:14px;opacity:.92;margin-top:4px}.tarjeta{background:var(--card);border:1px solid var(--borde);border-radius:var(--radio);padding:18px;margin-bottom:16px}.tarjeta h2{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--suave);font-weight:700;margin-bottom:12px}.dias{display:flex;gap:8px;flex-wrap:wrap}.dia{border:1px solid var(--borde-fuerte);background:var(--card);border-radius:999px;padding:8px 15px;font-size:14px;cursor:pointer;color:var(--texto);font-family:inherit;transition:.12s}.dia.activo,.dia:hover{border-color:var(--rojo)}.dia.activo{background:var(--rojo);color:#fff;font-weight:600}.opciones{display:grid;grid-gap:8px;gap:8px}.opcion{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--borde);border-radius:8px;padding:12px 14px;cursor:pointer;background:var(--card);transition:.12s}.opcion:hover{border-color:var(--borde-fuerte);background:#fdfcfb}.opcion.activo{border-color:var(--rojo);background:#fdf4f4;box-shadow:inset 0 0 0 1px var(--rojo)}.opcion input{margin-top:3px;accent-color:var(--rojo);width:16px;height:16px;flex:0 0 auto}.opcion .nombre{font-size:14px}.suplemento{display:inline-block;margin-left:6px;font-size:12px;font-weight:700;color:var(--rojo);white-space:nowrap}label.campo{display:block;font-size:13px;font-weight:600;margin-bottom:6px}input[type=date],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;font:inherit;font-size:15px;color:var(--texto);background:#fff;border:1px solid var(--borde-fuerte);border-radius:8px;padding:10px 12px}input:focus,select:focus,textarea:focus{outline:2px solid var(--rojo);outline-offset:-1px;border-color:var(--rojo)}textarea{resize:vertical;min-height:62px}.ayuda{font-size:12.5px;color:var(--suave);margin-top:5px}.btn{font:inherit;font-weight:600;font-size:15px;cursor:pointer;background:var(--rojo);color:#fff;border:1px solid var(--rojo);border-radius:8px;padding:12px 20px;transition:.12s}.btn:hover:not(:disabled){background:var(--rojo-oscuro);border-color:var(--rojo-oscuro)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ancho-total{width:100%}.btn.gris{background:#fff;color:var(--texto);border-color:var(--borde-fuerte)}.btn.gris:hover:not(:disabled){background:#f2eee9;border-color:var(--borde-fuerte)}.btn.pequeno{padding:7px 13px;font-size:13.5px}.aviso{border-radius:8px;padding:12px 14px;font-size:14px;margin-bottom:14px}.aviso.info{background:#fff8e6;border:1px solid #f0dfae;color:var(--aviso)}.aviso.error{background:#fdf0f0;border:1px solid #f0c4c4;color:var(--rojo-oscuro)}.aviso.ok{background:#eef8f1;border:1px solid #bfe3cd;color:var(--ok)}.total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--borde);margin-top:16px;padding-top:14px;font-size:15px}.total strong{font-size:20px}table.datos{width:100%;border-collapse:collapse;font-size:14px}table.datos th{text-align:left;font-size:11.5px;letter-spacing:.6px;text-transform:uppercase;color:var(--suave);padding:8px 10px;border-bottom:1px solid var(--borde)}table.datos td{padding:9px 10px;border-bottom:1px solid #f0ece7;vertical-align:top}table.datos tr:last-child td{border-bottom:0}.num{text-align:right;white-space:nowrap}.fila{display:flex;gap:8px;align-items:center}.fila>:first-child{flex:1 1}.pie{text-align:center;font-size:12.5px;color:var(--suave);margin-top:26px}@media (max-width:560px){.cabecera h1{font-size:20px}.tarjeta{padding:15px}}