/* Roof Pitch Calculator - Calculator Experience v2 */
.rpc-dynamic-calculator-page{
  --rpc-blue:#1F386E;
  --rpc-blue-dark:#142A59;
  --rpc-pink:#CC3366;
  --rpc-soft:#EEF3FF;
  --rpc-text:#182033;
  --rpc-muted:#667085;
  --rpc-line:#DCE4EF;
}
.rpc-shared-calculator-page,.rpc-shared-calculator-page *{box-sizing:border-box}
.rpc-shared-calculator-page{color:var(--rpc-text);font-family:inherit}
.rpc-shared-calculator-page a{text-decoration:none}
.rpc-shared-wrap{width:min(1180px,calc(100% - 36px));margin:0 auto}
.rpc-shared-breadcrumbs{padding:18px 0 0;color:#7A8497;font-size:12px}
.rpc-shared-breadcrumbs a{color:var(--rpc-blue)}
.rpc-shared-breadcrumbs span{margin:0 7px;color:#9AA4B5}
.rpc-shared-hero{padding:35px 0 24px}
.rpc-shared-kicker{margin-bottom:10px;color:var(--rpc-pink);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.rpc-shared-hero h1{max-width:900px;margin:0 0 13px;color:var(--rpc-blue);font-size:clamp(38px,5vw,58px);line-height:1.04;letter-spacing:-.045em;font-weight:850}
.rpc-shared-intro{max-width:830px;margin:0;color:var(--rpc-muted);font-size:16px;line-height:1.72}
.rpc-shared-updated{margin-top:15px;color:#7A8497;font-size:11.5px}
.rpc-shared-updated strong{color:#48556B}

.rpc-shared-trust-card{margin-bottom:27px;border:1px solid var(--rpc-line);border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(31,56,110,.05)}
.rpc-shared-trust-top{padding:17px 20px 14px}
.rpc-shared-creator{position:relative;display:inline-flex}
.rpc-shared-creator-button{display:flex;align-items:center;gap:12px;padding:0;border:0;background:none;text-align:left;font:inherit;cursor:pointer}
.rpc-shared-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:var(--rpc-soft);box-shadow:0 0 0 2px var(--rpc-blue);color:var(--rpc-blue);font-size:13px;font-weight:900}
.rpc-shared-creator-label{display:block;margin-bottom:2px;color:#7A8497;font-size:10px;font-weight:700}
.rpc-shared-creator-button strong{display:block;color:var(--rpc-blue);font-size:13px}
.rpc-shared-creator-button small{display:block;margin-top:2px;color:#667085;font-size:10.5px}
.rpc-shared-creator-tooltip{position:absolute;z-index:40;left:0;top:calc(100% + 10px);width:min(340px,calc(100vw - 40px));padding:14px;border:1px solid var(--rpc-line);border-radius:13px;background:#fff;box-shadow:0 18px 42px rgba(31,56,110,.15);opacity:0;visibility:hidden;transform:translateY(5px);pointer-events:none;transition:.16s ease}
.rpc-shared-creator:hover .rpc-shared-creator-tooltip,.rpc-shared-creator:focus-within .rpc-shared-creator-tooltip,.rpc-shared-creator.is-open .rpc-shared-creator-tooltip{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.rpc-shared-creator-tooltip strong{display:block;margin-bottom:5px;color:var(--rpc-blue);font-size:13px}
.rpc-shared-creator-tooltip p{margin:0 0 8px;color:var(--rpc-muted);font-size:11px;line-height:1.55}
.rpc-shared-creator-tooltip a{color:var(--rpc-pink);font-size:11px;font-weight:800}

.rpc-shared-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px 15px;border-top:1px solid #EDF1F6}
.rpc-shared-helpful{display:flex;align-items:center;gap:5px;color:#5A667C;font-size:11.5px;white-space:nowrap}
.rpc-shared-helpful strong{color:var(--rpc-blue)}
.rpc-shared-action-buttons{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}
.rpc-shared-action{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:7px 9px;border:1px solid #D5DEEA;border-radius:9px;background:#fff;color:#4B5870;font:inherit;font-size:10.5px;font-weight:800;cursor:pointer}
.rpc-shared-action:hover{background:#F7F9FC;color:var(--rpc-blue)}
.rpc-shared-action[aria-pressed="true"]{border-color:var(--rpc-blue);background:var(--rpc-soft);color:var(--rpc-blue)}
.rpc-shared-action b{font-size:10px}
.rpc-google-source{display:flex;align-items:center;min-height:36px}

.rpc-shared-mobile-toc{display:none;margin:0 0 20px;border:1px solid var(--rpc-line);border-radius:12px;background:#FAFBFD}
.rpc-shared-mobile-toc summary{padding:12px 14px;color:var(--rpc-blue);font-size:12px;font-weight:850;cursor:pointer}
.rpc-shared-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:28px;align-items:start;padding-bottom:62px}
.rpc-shared-main{min-width:0}
.rpc-shared-main [data-rpc-calculator-widget]{margin-bottom:34px}
.rpc-shared-main [data-rpc-calculator-content]{font-size:16px;line-height:1.75;color:#354158}
.rpc-shared-main [data-rpc-calculator-content] h2{margin:40px 0 13px;color:var(--rpc-blue);font-size:29px;line-height:1.2;letter-spacing:-.025em}
.rpc-shared-main [data-rpc-calculator-content] h3{margin:28px 0 9px;color:var(--rpc-blue);font-size:20px}
.rpc-shared-main [data-rpc-calculator-content] p{margin:0 0 17px}
.rpc-shared-main [data-rpc-calculator-content] a{color:var(--rpc-pink);font-weight:700}

.rpc-shared-sidebar{position:sticky;top:115px;display:grid;gap:12px}
.rpc-shared-side-card{padding:16px;border:1px solid var(--rpc-line);border-radius:15px;background:#fff}
.rpc-shared-side-card h2,.rpc-shared-side-card h3{margin:0 0 9px;color:var(--rpc-blue);font-size:13.5px}
.rpc-shared-side-card p{margin:0 0 10px;color:#667085;font-size:10.8px;line-height:1.5}
.rpc-shared-side-card a{display:block;padding:7px 0;color:#536178;font-size:11px;font-weight:750}
.rpc-shared-side-card a:hover{color:var(--rpc-pink)}
.rpc-shared-side-primary{background:linear-gradient(145deg,var(--rpc-blue),var(--rpc-blue-dark));border-color:transparent}
.rpc-shared-side-primary h3,.rpc-shared-side-primary p{color:#fff}
.rpc-shared-side-primary a{margin-top:7px;padding:9px 10px;border-radius:9px;background:#fff;color:var(--rpc-blue)}
.rpc-shared-toc{margin:0;padding:0;list-style:none}
.rpc-shared-toc a{display:block;padding:5px 0;color:#627087;font-size:11px;line-height:1.4}
.rpc-shared-toc .rpc-toc-h3 a{padding-left:11px;font-size:10.4px}

.rpc-shared-related{padding:54px 0 66px;border-top:1px solid var(--rpc-line);background:linear-gradient(180deg,#F9FBFE,#EEF3FF)}
.rpc-shared-related-head{max-width:720px;margin-bottom:20px}
.rpc-shared-related-head>span{display:block;margin-bottom:6px;color:var(--rpc-pink);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.rpc-shared-related-head h2{margin:0 0 7px;color:var(--rpc-blue);font-size:30px;letter-spacing:-.025em}
.rpc-shared-related-head p{margin:0;color:var(--rpc-muted);font-size:12.5px;line-height:1.6}
.rpc-shared-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.rpc-shared-related-card{min-height:142px;display:block;padding:18px;border:1px solid var(--rpc-line);border-radius:16px;background:#fff}
.rpc-shared-related-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(31,56,110,.07)}
.rpc-shared-related-card span{display:block;margin-bottom:6px;color:#7A8497;font-size:10px}
.rpc-shared-related-card strong{display:block;margin-bottom:7px;color:var(--rpc-blue);font-size:15px}
.rpc-shared-related-card p{margin:0;color:var(--rpc-muted);font-size:11px;line-height:1.5}

.rpc-shared-modal[hidden]{display:none!important}
.rpc-shared-modal{position:fixed;z-index:99999;inset:0;display:grid;place-items:center;padding:18px;background:rgba(12,23,46,.58);backdrop-filter:blur(3px)}
.rpc-shared-modal-card{width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.24)}
.rpc-shared-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:20px 21px 11px}
.rpc-shared-modal-head h2{margin:0 0 3px;color:var(--rpc-blue);font-size:20px}
.rpc-shared-modal-head p{margin:0;color:#7A8497;font-size:11px}
.rpc-shared-modal-head>button{width:36px;height:36px;border:0;border-radius:9px;background:#F5F7FB;color:#3C4961;font-size:22px;cursor:pointer}
.rpc-shared-modal-tabs{display:grid;grid-template-columns:repeat(3,1fr);padding:0 21px;border-bottom:1px solid #E7ECF3}
.rpc-shared-modal-tabs button{min-height:49px;border:0;border-bottom:3px solid transparent;background:none;color:#566176;font:inherit;font-size:11.5px;font-weight:800;cursor:pointer}
.rpc-shared-modal-tabs button.is-active{border-bottom-color:var(--rpc-pink);color:var(--rpc-blue)}
.rpc-shared-modal-panel{padding:21px}
.rpc-shared-modal-panel[hidden]{display:none!important}
.rpc-shared-modal-help{margin:0 0 16px;color:#667085;font-size:11px;line-height:1.55}
.rpc-shared-check{display:flex;align-items:flex-start;gap:8px;color:#536077;font-size:10.8px;line-height:1.5}
.rpc-shared-check input{flex:0 0 17px;width:17px;height:17px;accent-color:var(--rpc-blue)}
.rpc-shared-socials{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:17px 0}
.rpc-shared-socials button,.rpc-shared-copy-row button,.rpc-shared-form-actions button,.rpc-shared-embed-result button,.rpc-shared-cite-tabs button{min-height:40px;border:1px solid #D5DEEA;border-radius:9px;background:#fff;color:#4D5870;font:inherit;font-size:10.8px;font-weight:800;cursor:pointer}
.rpc-shared-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}
.rpc-shared-copy-row input,.rpc-shared-embed-result textarea,.rpc-shared-modal-panel>textarea{width:100%;border:1px solid #D6DFEC;border-radius:9px;background:#F9FAFC;color:#4D5870;font:inherit;font-size:11px}
.rpc-shared-copy-row input{height:41px;padding:0 11px}
.rpc-shared-embed-result textarea,.rpc-shared-modal-panel>textarea{min-height:115px;padding:11px;resize:vertical;line-height:1.5}
.rpc-shared-embed-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.rpc-shared-embed-form label{display:grid;gap:5px;color:#4B5870;font-size:10.5px;font-weight:800}
.rpc-shared-embed-form input[type="text"],.rpc-shared-embed-form input[type="email"]{height:42px;padding:0 10px;border:1px solid #D6DFEC;border-radius:9px}
.rpc-shared-embed-form .rpc-full{grid-column:1/-1}
.rpc-shared-form-actions{display:flex;justify-content:flex-end}
.rpc-shared-form-actions button,.rpc-shared-embed-result button{padding:7px 13px;background:var(--rpc-blue);border-color:var(--rpc-blue);color:#fff}
.rpc-shared-status{min-height:18px;color:#667085;font-size:10.5px}
.rpc-shared-embed-result{margin-top:16px;padding:14px;border:1px solid #CFE2D9;border-radius:12px;background:#F4FBF7}
.rpc-shared-embed-result strong{display:block;margin-bottom:7px;color:#16805B;font-size:11.5px}
.rpc-shared-cite-tabs{display:flex;gap:6px;margin-bottom:10px}
.rpc-shared-cite-tabs button.is-active{border-color:var(--rpc-blue);background:var(--rpc-soft);color:var(--rpc-blue)}
.rpc-shared-toast{position:fixed;z-index:100000;left:50%;bottom:22px;transform:translate(-50%,14px);padding:9px 13px;border-radius:9px;background:#132B59;color:#fff;opacity:0;pointer-events:none;font-size:11px;font-weight:800;transition:.18s ease}
.rpc-shared-toast.is-visible{opacity:1;transform:translate(-50%,0)}

body.rpc-calculator-embed-mode header,
body.rpc-calculator-embed-mode footer,
body.rpc-calculator-embed-mode .elementor-location-header,
body.rpc-calculator-embed-mode .elementor-location-footer,
body.rpc-calculator-embed-mode [data-rpc-calculator-content]{
  display:none!important;
}
body.rpc-calculator-embed-mode{margin:0!important;background:#fff!important}
body.rpc-calculator-embed-mode .rpc-shared-embed-content{width:100%!important;margin:0!important;padding:0!important}
body.rpc-calculator-embed-mode .rpc-shared-embed-content > *:not(:has([data-rpc-calculator-widget])){display:none!important}
body.rpc-calculator-embed-mode [data-rpc-calculator-widget]{margin:0!important}

@media(max-width:930px){
  .rpc-shared-layout{grid-template-columns:1fr}
  .rpc-shared-sidebar{display:none}
  .rpc-shared-mobile-toc{display:block}
  .rpc-shared-actions{align-items:flex-start;flex-direction:column}
  .rpc-shared-helpful{white-space:normal}
  .rpc-shared-action-buttons{justify-content:flex-start}
  .rpc-shared-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .rpc-shared-wrap{width:min(100% - 22px,1180px)}
  .rpc-shared-hero{padding:27px 0 20px}
  .rpc-shared-hero h1{font-size:36px}
  .rpc-shared-intro{font-size:14.5px}
  .rpc-shared-trust-top,.rpc-shared-actions{padding-left:15px;padding-right:15px}
  .rpc-shared-action{flex:1 1 calc(50% - 5px)}
  .rpc-google-source{width:100%}
  .rpc-shared-related-grid{grid-template-columns:1fr}
  .rpc-shared-socials{grid-template-columns:repeat(2,1fr)}
  .rpc-shared-embed-form{grid-template-columns:1fr}
  .rpc-shared-embed-form .rpc-full{grid-column:1}
  .rpc-shared-copy-row{grid-template-columns:1fr}
  .rpc-shared-modal{padding:9px}
}


/* ==========================================================
   v2.1 LAYOUT
   H1 + description -> wide calculator -> engagement -> content
   ========================================================== */

.rpc-shared-calculator-wide{
  width:min(1280px,calc(100% - 28px));
  margin:0 auto 28px;
}

.rpc-shared-calculator-wide > [data-rpc-calculator-slot]{
  width:100%;
}

.rpc-shared-calculator-wide [data-rpc-calculator-widget]{
  width:100%;
  margin:0;
}

/* The calculator is no longer constrained by the article/sidebar grid. */
.rpc-shared-main [data-rpc-calculator-widget]{
  margin:0;
}

/* Elementor's original output is only a staging area.
   JS removes it after moving the two marked widgets. */
.rpc-shared-elementor-source{
  display:none!important;
}

/* The article remains narrower/readable while the calculator can be wider. */
.rpc-shared-main [data-rpc-calculator-content]{
  width:100%;
}

/* Engagement card now sits below the calculator. */
.rpc-shared-trust-card{
  margin-top:0;
  margin-bottom:28px;
}

@media(max-width:930px){
  .rpc-shared-calculator-wide{
    width:min(100% - 22px,1280px);
    margin-bottom:22px;
  }
}

@media(max-width:640px){
  .rpc-shared-calculator-wide{
    width:min(100% - 14px,1280px);
    margin-bottom:18px;
  }
}


/* ==========================================================
   v2.2 HOMEPAGE CALCULATOR ACTIONS
   ========================================================== */

.rpc-home-actions{
  width:min(1180px,calc(100% - 36px));
  margin:18px auto 28px;
  padding:13px 15px;
  border:1px solid var(--rpc-line);
  border-radius:15px;
  background:#fff;
  box-shadow:0 7px 22px rgba(31,56,110,.045);
  font-family:inherit;
}

.rpc-home-actions,
.rpc-home-actions *{
  box-sizing:border-box;
}

.rpc-home-actions-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.rpc-home-actions-buttons{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:6px;
}

.rpc-home-actions .rpc-shared-helpful{
  flex:0 1 auto;
}

.rpc-home-actions .rpc-shared-action{
  white-space:nowrap;
}

.rpc-home-modal-tabs{
  grid-template-columns:repeat(2,1fr);
}


/* ==========================================================
   v2.2 HOMEPAGE RELATED CALCULATORS
   ========================================================== */

.rpc-home-related{
  --hr-blue:#1F386E;
  --hr-pink:#CC3366;
  --hr-soft:#EEF3FF;
  --hr-line:#DCE4EF;
  --hr-muted:#667085;
  width:min(1180px,calc(100% - 36px));
  margin:34px auto 58px;
  font-family:inherit;
  color:#182033;
}

.rpc-home-related,
.rpc-home-related *{
  box-sizing:border-box;
}

.rpc-home-related a{
  text-decoration:none;
}

.rpc-home-related-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:15px;
}

.rpc-home-related-heading h2{
  margin:0;
  color:var(--hr-blue);
  font-size:22px;
  line-height:1.2;
  letter-spacing:-.02em;
}

.rpc-home-related-heading>a{
  color:var(--hr-pink);
  font-size:11.5px;
  font-weight:850;
}

.rpc-home-related-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:16px;
  padding-bottom:1px;
}

.rpc-home-related-tab{
  min-height:35px;
  padding:7px 12px;
  border:1px solid #D7DFEA;
  border-radius:999px;
  background:#fff;
  color:#566176;
  font:inherit;
  font-size:10.8px;
  font-weight:800;
  cursor:pointer;
  transition:.16s ease;
}

.rpc-home-related-tab:hover,
.rpc-home-related-tab.is-active{
  border-color:var(--hr-blue);
  background:var(--hr-soft);
  color:var(--hr-blue);
}

.rpc-home-related-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:13px;
}

.rpc-home-related-card{
  overflow:hidden;
  border:1px solid var(--hr-line);
  border-radius:15px;
  background:#fff;
  box-shadow:0 7px 22px rgba(31,56,110,.04);
  transition:.18s ease;
}

.rpc-home-related-card:hover{
  transform:translateY(-2px);
  border-color:#C6D1E1;
  box-shadow:0 12px 30px rgba(31,56,110,.075);
}

.rpc-home-related-card[hidden]{
  display:none!important;
}

.rpc-home-related-image{
  display:block;
  aspect-ratio:16/9;
  overflow:hidden;
  background:linear-gradient(140deg,#F6F9FD,#EAF0FA);
}

.rpc-home-related-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .22s ease;
}

.rpc-home-related-card:hover .rpc-home-related-image img{
  transform:scale(1.025);
}

.rpc-home-related-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  color:#A3B1C6;
  font-size:48px;
}

.rpc-home-related-body{
  padding:14px;
}

.rpc-home-related-topic{
  display:inline-block;
  margin-bottom:7px;
  padding:4px 7px;
  border-radius:999px;
  background:var(--hr-soft);
  color:var(--hr-blue);
  font-size:9px;
  font-weight:850;
}

.rpc-home-related-body h3{
  margin:0 0 7px;
  font-size:15px;
  line-height:1.3;
}

.rpc-home-related-body h3 a{
  color:var(--hr-blue);
}

.rpc-home-related-body p{
  min-height:52px;
  margin:0 0 11px;
  color:var(--hr-muted);
  font-size:10.8px;
  line-height:1.55;
}

.rpc-home-related-open{
  color:var(--hr-pink);
  font-size:10.8px;
  font-weight:850;
}

.rpc-home-related-empty{
  padding:15px;
  border:1px dashed #C8D3E3;
  border-radius:12px;
  background:#FAFBFD;
  color:var(--hr-muted);
  font-size:11px;
  text-align:center;
}

@media(max-width:960px){
  .rpc-home-actions-top{
    align-items:flex-start;
    flex-direction:column;
  }

  .rpc-home-actions-buttons{
    justify-content:flex-start;
  }

  .rpc-home-related-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .rpc-home-actions,
  .rpc-home-related{
    width:min(100% - 22px,1180px);
  }

  .rpc-home-actions .rpc-shared-action{
    flex:1 1 calc(50% - 5px);
  }

  .rpc-home-actions .rpc-google-source{
    width:100%;
  }

  .rpc-home-related-heading{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }

  .rpc-home-related-tabs{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:4px;
  }

  .rpc-home-related-tab{
    flex:0 0 auto;
  }

  .rpc-home-related-grid{
    grid-template-columns:1fr;
  }

  .rpc-home-related-body p{
    min-height:0;
  }
}


/* ==========================================================
   v2.3 ACTION BAR + MODAL READABILITY / GOOGLE DEEPLINK
   ========================================================== */

/* Shared action options requested at 12px / 600. */
.rpc-shared-action,
.rpc-home-actions .rpc-shared-action{
  min-height:38px;
  padding:8px 10px;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.25;
}

.rpc-shared-action b,
.rpc-home-actions .rpc-shared-action b{
  font-size:12px!important;
  font-weight:600!important;
}

.rpc-shared-helpful{
  font-size:12px!important;
  font-weight:600;
  line-height:1.4;
}

.rpc-shared-helpful strong{
  font-size:12px;
  font-weight:700;
}

/* Google Preferred Sources:
   use Google's documented source-preferences deeplink rather than
   the embedded JS button, which can report false ineligibility. */
.rpc-google-source{
  display:flex;
  align-items:center;
  min-height:38px;
}

.rpc-google-source-link{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:8px 12px;
  border:1px solid #D5DEEA;
  border-radius:999px;
  background:#F7F8FA;
  color:#4B5870!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.2;
  white-space:nowrap;
  transition:background .16s ease,border-color .16s ease,color .16s ease;
}

.rpc-google-source-link:hover{
  border-color:#C4CFDE;
  background:#EEF3FF;
  color:#1F386E!important;
}

.rpc-google-source-g{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  border:1px solid #E0E5EC;
  color:#4285F4;
  font-family:Arial,sans-serif;
  font-size:13px;
  font-weight:700;
  line-height:1;
}

/* Modal shell */
.rpc-shared-modal-card{
  width:min(760px,100%);
}

.rpc-shared-modal-head{
  align-items:center;
  padding:21px 22px 13px;
}

.rpc-shared-modal-head h2{
  margin:0 0 4px;
  font-size:21px;
  line-height:1.2;
  font-weight:700;
}

.rpc-shared-modal-head p{
  font-size:12px;
  line-height:1.4;
}

/* Close icon: exact visual centering inside its background. */
.rpc-shared-modal-head>button{
  flex:0 0 38px;
  width:38px;
  height:38px;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0;
  border-radius:10px;
  background:#F4F6FA!important;
  color:#40506A!important;
  font-family:Arial,sans-serif!important;
  font-size:0!important;
  line-height:1!important;
  cursor:pointer;
}

.rpc-shared-modal-head>button span{
  display:block;
  margin:0;
  padding:0;
  color:inherit;
  font-family:Arial,sans-serif;
  font-size:24px;
  font-weight:400;
  line-height:1;
  transform:translateY(-1px);
}

.rpc-shared-modal-head>button:hover{
  background:#E9EEF6!important;
  color:#1F386E!important;
}

/* Tabs: force readable text and neutral background even if the theme
   applies a global .is-active button background. */
.rpc-shared-modal-tabs{
  padding:0 22px;
}

.rpc-shared-modal-tabs button{
  min-height:52px;
  padding:9px 12px!important;
  border:0!important;
  border-bottom:3px solid transparent!important;
  border-radius:0!important;
  background:#fff!important;
  color:#4E5A70!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.25!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

.rpc-shared-modal-tabs button:hover{
  background:#F8FAFD!important;
  color:#1F386E!important;
}

.rpc-shared-modal-tabs button.is-active,
.rpc-shared-modal-tabs button[aria-selected="true"]{
  border-bottom-color:#CC3366!important;
  background:#fff!important;
  color:#1F386E!important;
  font-weight:700!important;
}

/* Modal body readability */
.rpc-shared-modal-panel{
  padding:22px;
  font-size:13px;
}

.rpc-shared-modal-help{
  margin-bottom:17px;
  font-size:13px!important;
  line-height:1.55;
}

.rpc-shared-check{
  gap:9px;
  font-size:13px!important;
  line-height:1.5;
}

.rpc-shared-check input{
  margin-top:1px;
}

.rpc-shared-socials{
  gap:9px;
  margin:18px 0;
}

.rpc-shared-socials button,
.rpc-shared-copy-row button,
.rpc-shared-form-actions button,
.rpc-shared-embed-result button,
.rpc-shared-cite-tabs button{
  min-height:42px;
  padding:8px 11px;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.25;
}

.rpc-shared-copy-row{
  gap:8px;
}

.rpc-shared-copy-row input,
.rpc-shared-embed-result textarea,
.rpc-shared-modal-panel>textarea{
  font-size:12.5px!important;
  line-height:1.5;
}

.rpc-shared-copy-row input{
  height:43px;
  padding:0 12px;
}

.rpc-shared-embed-form{
  gap:12px;
}

.rpc-shared-embed-form label{
  gap:6px;
  font-size:12.5px!important;
  font-weight:600!important;
  line-height:1.4;
}

.rpc-shared-embed-form input[type="text"],
.rpc-shared-embed-form input[type="email"]{
  height:44px;
  padding:0 11px;
  font-size:13px;
}

.rpc-shared-status{
  min-height:19px;
  font-size:12px;
}

.rpc-shared-embed-result strong{
  font-size:13px;
}

.rpc-shared-cite-tabs{
  gap:7px;
}

.rpc-shared-cite-tabs button{
  background:#fff!important;
  color:#4E5A70!important;
}

.rpc-shared-cite-tabs button.is-active{
  border-color:#1F386E!important;
  background:#EEF3FF!important;
  color:#1F386E!important;
  font-weight:700!important;
}

/* Keep action bar comfortable at smaller desktop widths. */
@media(max-width:1100px){
  .rpc-shared-actions{
    align-items:flex-start;
    flex-direction:column;
  }

  .rpc-shared-action-buttons{
    justify-content:flex-start;
  }
}

@media(max-width:640px){
  .rpc-shared-modal-head{
    padding:17px 16px 10px;
  }

  .rpc-shared-modal-tabs{
    padding:0 12px;
  }

  .rpc-shared-modal-tabs button{
    min-height:48px;
    padding:8px 6px!important;
    font-size:12.5px!important;
  }

  .rpc-shared-modal-panel{
    padding:16px;
  }

  .rpc-google-source,
  .rpc-google-source-link{
    width:100%;
  }

  .rpc-google-source-link{
    border-radius:10px;
  }
}
