/* Knighton Motors opening-status card */

.opening-status{
  margin:12px 0 16px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.opening-status-card{
  display:flex;
  flex-direction:column;
  padding:17px 18px;
  border:2px solid #d7dde1;
  border-left-width:5px;
  border-radius:8px;
  background:#f7f8f8;
  transition:
    background-color .75s ease,
    border-color .75s ease,
    box-shadow .75s ease;
}

/* OPEN: calm state */
.opening-status.is-open .opening-status-card{
  background:#f3f8f5;
  border-color:#abd1b7;
  border-left-color:#2f7d4a;
  box-shadow:
    0 0 0 1px rgba(47,125,74,.08),
    0 3px 11px rgba(47,125,74,.12);
}

/* OPEN: brighter pulse state */
.opening-status.is-open.status-pulse-on .opening-status-card{
  background:#def2e5;
  border-color:#4f9f68;
  border-left-color:#185f31;
  box-shadow:
    0 0 0 4px rgba(47,125,74,.16),
    0 0 28px rgba(47,125,74,.42),
    0 6px 22px rgba(47,125,74,.20),
    inset 0 0 16px rgba(47,125,74,.08);
}

/* CLOSED: calm state */
.opening-status.is-closed .opening-status-card{
  background:#fff8f5;
  border-color:#efc1b3;
  border-left-color:#c94322;
  box-shadow:
    0 0 0 1px rgba(201,67,34,.07),
    0 3px 11px rgba(201,67,34,.11);
}

/* CLOSED: brighter pulse state */
.opening-status.is-closed.status-pulse-on .opening-status-card{
  background:#ffe5db;
  border-color:#dc7658;
  border-left-color:#a92f12;
  box-shadow:
    0 0 0 4px rgba(201,67,34,.15),
    0 0 28px rgba(201,67,34,.40),
    0 6px 22px rgba(201,67,34,.19),
    inset 0 0 16px rgba(201,67,34,.08);
}

.opening-status .status-title{
  display:block;
  margin:0;
  font-size:17px;
  line-height:1.25;
  color:#20252a;
}

.opening-status.is-open .status-title{
  color:#1f6939;
}

.opening-status.is-closed .status-title{
  color:#9a3217;
}

.opening-status .status-detail{
  margin:5px 0 0;
  font-size:14px;
  line-height:1.5;
  color:#4f5960;
}

.birthday-message{
  margin-top:12px;
  padding:10px 12px;
  border:1px solid #edce72;
  border-radius:6px;
  background:#fff0c7;
  color:#654600;
  font-size:14px;
  font-weight:700;
  line-height:1.4;
}

.status-next{
  display:grid;
  grid-template-columns:minmax(100px,auto) 1fr auto;
  align-items:center;
  column-gap:16px;
  row-gap:2px;
  margin-top:14px;
  padding-top:13px;
  border-top:1px solid rgba(60,69,75,.14);
}

.status-next-label{
  grid-row:1 / span 2;
  align-self:center;
  color:#69737a;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.25;
  text-transform:uppercase;
}

.status-next-date{
  color:#252b2f;
  font-size:14px;
  font-weight:700;
  line-height:1.35;
}

.status-next-time{
  color:#252b2f;
  font-size:14px;
  font-weight:700;
  line-height:1.35;
  white-space:nowrap;
}

.preview-date{
  display:block;
  margin:6px 2px 0;
  color:#7b858c;
  font-size:11px;
  line-height:1.35;
}

@media(max-width:650px){
  .opening-status{
    margin:9px 0 12px !important;
  }

  .opening-status-card{
    padding:15px 14px;
    border-radius:7px;
  }

  .opening-status .status-title{
    font-size:16px;
  }

  .opening-status .status-detail{
    font-size:13.5px;
    line-height:1.45;
  }

  .birthday-message{
    margin-top:11px;
    padding:9px 10px;
    font-size:13px;
  }

  .status-next{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:3px;
    margin-top:13px;
    padding-top:12px;
  }

  .status-next-label{
    margin-bottom:2px;
    font-size:10.5px;
  }

  .status-next-date,
  .status-next-time{
    font-size:13.5px;
  }

  .preview-date{
    margin:5px 2px 0;
    font-size:10.5px;
  }
}
