/**
 * DataFirefly - Optical Lenses - cart, checkout, order detail and My prescriptions
 *
 * @author    DataFirefly
 * @copyright DataFirefly Limited
 * @license   Commercial license
 */
.dfol-line {
  flex-basis: 100%;
  width: 100%;
  margin: .55rem 0 .25rem;
  padding: .6rem .75rem;
  border-left: 3px solid #1f6f8b;
  border-radius: 0 10px 10px 0;
  background: #f3f8fa;
  font-size: .86rem;
  line-height: 1.45;
  text-align: left;
  color: #1d2a31;
}

.dfol-line--classic {
  clear: both;
  width: auto;
  margin: .4rem 0 .2rem 25%;
}

@media (max-width: 767px) {
  .dfol-line--classic {
    margin-left: 0;
  }
}

.dfol-line p {
  margin: 0;
}

.dfol-line__title {
  display: flex;
  align-items: center;
  gap: .4rem;
}

.dfol-line__title svg {
  flex: none;
  color: #1f6f8b;
}

.dfol-line__rx {
  display: flex;
  flex-wrap: wrap;
  gap: .15rem .8rem;
  margin-top: .2rem !important;
  font-variant-numeric: tabular-nums;
}

.dfol-line__tr,
.dfol-line__meta {
  color: #56656d;
}

.dfol-line__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .2rem .8rem;
  margin-top: .2rem !important;
}

.dfol-line__meta .is-ok {
  color: #1d6b40;
  font-weight: 600;
}

.dfol-line__meta .is-warn {
  color: #855000;
  font-weight: 600;
}

/* My prescriptions */
.dfol-acc {
  display: grid;
  gap: 1rem;
}

.dfol-acc__intro {
  margin: 0 0 1rem;
  color: #56656d;
}

.dfol-acc__card {
  padding: 1rem 1.15rem;
  border: 1px solid #dbe3e7;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(16, 32, 40, .05);
}

.dfol-acc__head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: .8rem;
}

.dfol-acc__frame {
  display: flex;
  gap: .8rem;
  align-items: center;
}

.dfol-acc__frame img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border: 1px solid #dbe3e7;
  border-radius: 10px;
}

.dfol-acc__frame p,
.dfol-acc__order p {
  margin: 0;
}

.dfol-acc__order {
  text-align: right;
  font-size: .9rem;
}

.dfol-acc__badge {
  display: inline-block;
  margin-top: .3rem;
  padding: .12rem .6rem;
  border-radius: 999px;
  background: #fff4de;
  color: #855000;
  font-size: .78rem;
  font-weight: 700;
}

.dfol-acc__badge.is-verified {
  background: #e8f5ed;
  color: #1d6b40;
}

.dfol-acc__badge.is-info {
  background: #eaf0fd;
  color: #2b4fa8;
}

.dfol-acc__rx {
  width: 100%;
  max-width: 560px;
  margin: 0 0 .7rem;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #dbe3e7;
  border-radius: 10px;
  overflow: hidden;
  font-variant-numeric: tabular-nums;
  text-align: center;
}

.dfol-acc__rx th,
.dfol-acc__rx td {
  padding: .45rem .5rem;
  border-bottom: 1px solid #e6ecef;
}

.dfol-acc__rx tbody tr:last-child > * {
  border-bottom: 0;
}

.dfol-acc__rx thead th {
  background: #f4f7f8;
  color: #5b6a72;
  font-size: .75rem;
  letter-spacing: .05em;
}

.dfol-acc__rx tbody th {
  text-align: left;
}

.dfol-acc__facts {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem 1.4rem;
  margin: 0 0 .4rem;
  font-size: .9rem;
}

.dfol-acc__file {
  margin: .5rem 0 0;
  color: #1d6b40;
  font-weight: 600;
}

.dfol-acc__upload {
  margin-top: .9rem;
  padding: .85rem 1rem;
  border-radius: 10px;
  background: #f3f8fa;
}

.dfol-acc__upload.is-info {
  border: 1px solid #c9d7f7;
  background: #eef3fe;
}

.dfol-acc__upload label {
  display: block;
  margin: 0 0 .5rem;
  font-weight: 700;
  text-align: left;
}

.dfol-acc__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .6rem;
  margin-bottom: .35rem;
}

.dfol-acc__row input[type="file"] {
  flex: 1 1 260px;
  font-size: .9rem;
}
