/* ==========================================
   SUBSCRIBE MODAL (Frosted Blue) - Isolated CSS
   File: assets/css/subscribe-modal.css
========================================== */

/* overlay */
.cp-modal{
  position: fixed;
  margin-top: 0% !important;
  inset: 0;
  z-index: 999999;
  display: none;
}

/* open state */
.cp-modal.is-open{
  display: grid !important;
  place-items: center !important;
  padding: 16px !important;
}

/* backdrop */
.cp-modal-backdrop{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}

/* modal card */
.cp-modal-card{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;

  width: min(440px, 100%) !important;
  max-height: calc(100vh - 40px) !important;
  overflow: auto !important;
  overflow-x: hidden !important;

  border-radius: 18px;
  padding: 18px 16px 16px;

  background: rgba(70, 175, 255, 0.14);
  border: 1px solid rgba(120, 210, 255, 0.30);
  box-shadow: 0 18px 40px rgba(0,0,0,0.45);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  color: rgba(235,250,255,0.95);
  box-sizing: border-box;
}

/* prevent overflow */
.cp-modal-card,
.cp-modal-card *{
  box-sizing: border-box;
}

/* title */
.cp-modal-card h3{
  margin: 2px 0 6px;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  letter-spacing: .2px;
}

/* subtext */
.cp-modal-subtext{
  margin: 0 0 12px;
  opacity: .85;
  font-size: 13px;
}

/* close button */
.cp-modal-close{
  position: absolute;
  top: 10px;
  right: 10px;

  width: 34px;
  height: 34px;
  border-radius: 12px;

  border: 1px solid rgba(120, 210, 255, 0.22);
  background: rgba(10, 20, 35, 0.30);
  color: rgba(235,250,255,0.9);
  cursor: pointer;
}

/* form */
.cp-sub-form{
  width: 100%;
  display: grid;
  gap: 10px;
}

.cp-field span{
  display:block;
  font-size: 12px;
  opacity: .85;
  margin-bottom: 6px;
  font-family: "Poppins", sans-serif;
}

/* input */
.cp-field input{
  width: 100%;
  height: 38px;
  border-radius: 12px;
  padding: 0 12px;

  color: #eaf7ff;
  background: rgba(10, 20, 35, 0.35);
  border: 1px solid rgba(120, 210, 255, 0.22);
  outline: none;
}

.cp-field input:focus{
  border-color: rgba(120, 220, 255, 0.6);
  box-shadow: 0 0 0 4px rgba(70, 175, 255, 0.18);
}

/* subscribe button */
.cp-sub-btn{
  width: 100%;
  height: 40px;
  border-radius: 14px;
  border: 1px solid rgba(130, 225, 255, 0.35);
  cursor: pointer;
  font-weight: 600;
  font-family: "Poppins", sans-serif;

  color: #071522;
  background: linear-gradient(135deg,
    rgba(120, 220, 255, 0.95),
    rgba(80, 140, 255, 0.92)
  );
  box-shadow: 0 10px 22px rgba(0,0,0,0.25);
}

.cp-sub-msg{
  font-size: 12px;
  opacity: .9;
  min-height: 16px;
}

/* mobile */
@media (max-width: 480px){
  .cp-modal-card{
    border-radius: 16px;
  }

  .cp-sub-btn{
    height: 44px;
  }
}

.cp-modal-logo{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 6px 0 12px;
}

.cp-modal-logo img{
  height: 44px;           /* ✅ adjust size */
  width: auto;
  display: block;
  filter: drop-shadow(0 10px 20px rgba(0,0,0,0.35));
  opacity: 0.95;
}

.cp-modal-foot{
  margin-top: 14px;
  padding-top: 10px;

  text-align: center;
  font-size: 12px;
  opacity: 0.8;
  color: rgba(235,250,255,0.85);

  border-top: 1px solid rgba(120, 210, 255, 0.18);
  font-family: "Poppins", sans-serif;
}


/* textarea for comment modal */
.cp-field textarea{
  width: 100%;
  border-radius: 12px;
  padding: 10px 12px;
  color: #eaf7ff;
  background: rgba(10, 20, 35, 0.35);
  border: 1px solid rgba(120, 210, 255, 0.22);
  outline: none;
  resize: vertical;
  min-height: 110px;
  font-family: "Poppins", sans-serif;
  font-size: 13px;
}

.cp-field textarea:focus{
  border-color: rgba(120, 220, 255, 0.6);
  box-shadow: 0 0 0 4px rgba(70, 175, 255, 0.18);
}
