/* ============================================================
   FFF - Password Protected (WordPress / Divi)
   Clean card + consistent input + consistent submit button
   ============================================================ */

/* Optional: give some breathing room around the content area */
.post-password-required .entry-content{
  padding-top: 18px;
  padding-bottom: 18px;
}

/* Card */
.post-password-required .et_password_protected_form,
.post-password-required .et_password_protected_form.et_pb_module{
  max-width: 720px;
  margin: 0 auto !important;
  padding: 18px 18px 16px !important;

  background: rgba(255,255,255,0.94);
  border: 1px solid rgba(12,18,28,0.10);
  border-radius: 8px !important;
  box-shadow: 0 14px 34px rgba(15,23,42,0.10);

  position: relative;
}

/* Lock accent */
.post-password-required .et_password_protected_form:before{
  content: "🔒";
  position: absolute;
  top: 14px;
  right: 14px;
  font-size: 24px;
  opacity: 0.55;
}

/* Title */
.post-password-required .et_password_protected_form h1,
.post-password-required .et_password_protected_form h2,
.post-password-required .et_password_protected_form h3{
  margin: 0 0 8px !important;
  font-size: 1.35rem !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  color: rgba(12,18,28,0.92) !important;
}

/* Intro text */
.post-password-required .et_password_protected_form p{
  margin: 0 0 10px !important;
  font-size: 0.95rem !important;
  line-height: 1.45 !important;
  color: rgba(12,18,28,0.72) !important;
}

/* Form structure cleanup */
.post-password-required .et_password_protected_form form{
  margin: 0 !important;
}

.post-password-required .et_password_protected_form form > p{
  margin: 0 !important;
  padding: 0 !important;
}

/* Label */
.post-password-required .et_password_protected_form label{
  display: block !important;
  margin: 8px 0 6px !important;
  font-weight: 800 !important;
  color: rgba(12,18,28,0.86) !important;
}

/* Password field */
.post-password-required .et_password_protected_form input[type="password"]{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;

  height: 46px !important;
  padding: 10px 12px !important;

  border-radius: 6px !important;
  border: 1px solid rgba(12,18,28,0.16) !important;
  background: #ffffff !important;
  color: rgba(12,18,28,0.90) !important;

  outline: none !important;
  box-shadow: none !important;

  display: block !important;
}

/* Focus ring */
.post-password-required .et_password_protected_form input[type="password"]:focus{
  border-color: rgba(66,103,178,0.55) !important;
  box-shadow: 0 0 0 3px rgba(66,103,178,0.16) !important;
}

/* ------------------------------------------------------------
   Submit button (covers BOTH WP default and Divi button)
------------------------------------------------------------ */

/* Reset any weird floats/alignment from themes */
.post-password-required .et_password_protected_form .et_pb_button,
.post-password-required .et_password_protected_form button,
.post-password-required .et_password_protected_form input[type="submit"]{
  float: none !important;
  clear: both !important;
}

/* Unified button styling */
.post-password-required .et_password_protected_form button[type="submit"],
.post-password-required .et_password_protected_form button.et_submit_button,
.post-password-required .et_password_protected_form input[type="submit"]{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;

  margin: 12px 0 0 !important;
  padding: 0 14px !important;
  height: 46px !important;

  display: block !important;
  text-align: center !important;

  border-radius: 6px !important;
  font-weight: 900 !important;
  letter-spacing: 0.02em !important;

  border: 1px solid rgba(66,103,178,0.32) !important;
  background: rgba(66,103,178,1) !important;
  color: #ffffff !important;

  cursor: pointer !important;
  box-shadow: none !important;

  transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

/* Hover */
.post-password-required .et_password_protected_form button[type="submit"]:hover,
.post-password-required .et_password_protected_form button.et_submit_button:hover,
.post-password-required .et_password_protected_form input[type="submit"]:hover{
  background: rgba(50,82,150,1) !important;
  box-shadow: 0 14px 34px rgba(66,103,178,0.20) !important;
  transform: translateY(-1px) !important;
}

/* Remove Divi pseudo-elements that can mess spacing */
.post-password-required .et_password_protected_form .et_pb_button:before,
.post-password-required .et_password_protected_form .et_pb_button:after{
  display: none !important;
  content: none !important;
}

/* Mobile */
@media (max-width: 680px){
  .post-password-required .et_password_protected_form{
    margin: 0 14px !important;
    padding: 16px 14px 14px !important;
  }
}

/* ============================================================
   FFF - Password Protected: full-page section framing
   ============================================================ */

/* Make the whole main area behave like a clean "screen" */
.post-password-required #et-main-area{
  background: linear-gradient(180deg, #eef2f8 0%, #e4ebf6 100%) !important;
}

/* Center the content vertically and horizontally */
.post-password-required #main-content{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Divi builder wrapper sometimes adds spacing */
.post-password-required .entry-content,
.post-password-required .et-l,
.post-password-required .et_builder_inner_content{
  margin: 0 !important;
  padding: 0 !important;
}

/* Force the first section to become a full viewport frame */
.post-password-required .et_pb_section.et_section_regular{
  min-height: calc(100vh - 140px) !important; /* header + breathing room */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 54px 14px !important;
  background: transparent !important;
}

/* Row and column: remove weird fixed widths / floats so centering works */
.post-password-required .et_pb_section.et_section_regular > .et_pb_row{
  width: 100% !important;
  max-width: 920px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.post-password-required .et_pb_section.et_section_regular .et_pb_column{
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Optional: subtle background texture, very quiet */
.post-password-required #et-main-area:before{
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 0 !important;
  opacity: 0.55 !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(66,103,178,0.10), transparent 42%),
    radial-gradient(circle at 82% 78%, rgba(34,197,94,0.06), transparent 46%),
    radial-gradient(circle at 70% 18%, rgba(245,158,11,0.05), transparent 40%);
}

/* Ensure the form card stays above the fixed texture */
.post-password-required .et_password_protected_form{
  position: relative !important;
  z-index: 2 !important;
}

/* Add breathing room before footer if it still shows close */
.post-password-required #main-footer{
  margin-top: 0 !important;
}

/* Mobile adjustments */
@media (max-width: 680px){
  .post-password-required .et_pb_section.et_section_regular{
    min-height: calc(100vh - 110px) !important;
    padding: 34px 14px !important;
  }
}
/* ============================================================
   FFF - Password Protected: full-page background + centering
   Works when "post-password-required" is on the ARTICLE (Divi case)
   ============================================================ */

/* Turn the article into a full-screen frame */
article.post-password-required{
  position: relative !important;
  isolation: isolate !important; /* keeps ::before behind cleanly */
  min-height: calc(100vh - 80px) !important; /* header offset */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 54px 14px !important;
}

/* Full-screen background, independent of body/wrappers */
article.post-password-required:before{
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;

  background: linear-gradient(180deg, #eef2f8 0%, #e4ebf6 100%) !important;
}

/* Subtle texture overlay */
article.post-password-required:after{
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
  opacity: 0.55 !important;

  background:
    radial-gradient(circle at 18% 22%, rgba(66,103,178,0.10), transparent 42%),
    radial-gradient(circle at 82% 78%, rgba(34,197,94,0.06), transparent 46%),
    radial-gradient(circle at 70% 18%, rgba(245,158,11,0.05), transparent 40%);
}

/* Make sure the entry content doesn't fight the centering */
article.post-password-required > .entry-content{
  width: 100% !important;
}

/* Remove white blocks from Divi layout inside this protected article */
article.post-password-required .et_pb_section,
article.post-password-required .et_pb_row,
article.post-password-required .et_pb_column,
article.post-password-required .entry-content{
  background: transparent !important;
}

/* Keep the card above everything */
article.post-password-required .et_password_protected_form{
  z-index: 2 !important;
}

/* Mobile */
@media (max-width: 680px){
  article.post-password-required{
    min-height: calc(100vh - 60px) !important;
    padding: 34px 14px !important;
  }
}
