/* Scoped base styles (won't affect your whole WP theme) */
.mds-payment-link { padding-bottom: 4px !important; }
.mds-payment-link a:hover { text-decoration: underline !important; }

.header-top {
    display: none !important;
}

.header-wrapper {
    display: none !important;
}

.page-content {
    background-color: #f8f9fa;
	padding-top: 0 !important;
}

.mds-agreement-wrap *{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;
}

.swal2-popup.swal2-modal {
    min-width: 320px !important;
}

/* Original UI styles (global selectors removed) */
/* =========================================================
   MDS Agreement (SCOPED)
   Todo queda dentro de .mds-agreement-wrap para no romper WP
========================================================= */

.mds-agreement-wrap{
  background:#f8f9fa;
  color:#333;
  font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;
  line-height:1.6;
  padding:20px;
  text-align: left;
}

.mds-agreement-wrap *{
  box-sizing:border-box;
  font-family:inherit;
}

.mds-agreement-wrap .agreement-container{
  max-width:1000px;
  margin:0 auto;
  background:#fff;
  border-radius:12px;
  box-shadow:0 5px 25px rgba(0,0,0,.08);
  overflow:hidden;
}

.mds-agreement-wrap .header{
  background:linear-gradient(135deg,#1a3a5f 0%,#2c5282 100%);
  color:#fff;
  padding:25px 30px;
  border-bottom:5px solid #e53e3e;
}

.mds-agreement-wrap .header h1{
  font-size:1.6rem;
  margin:0 0 6px 0;
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
}

.mds-agreement-wrap .header p{
  margin:0;
  opacity:.9;
  font-size:1rem;
}

.mds-agreement-wrap .document-body{
  padding:0 30px 30px;
}

.mds-agreement-wrap .page-section{
  margin:0 0 20px;
  padding:0 0 20px;
  border-bottom:1px solid #e2e8f0;
}

.page-section p {
    font-size: 17px;
    font-weight: 400;
}

.mds-agreement-wrap .section-title{
  color:#2d3748;
  margin:22px 0 18px;
  padding:0 0 10px;
  border-bottom:2px solid #e2e8f0;
  font-size:1.35rem;
  display:flex;
  align-items:center;
  font-weight: bold;
  gap:10px;
}

.section-title.top {
    padding: 1em 0 0;
    border: none;
	font-weight: normal;
    margin: 0;
}

.mds-agreement-wrap .section-title i{ color:#2c5282; }

.page-section.step2 p {
    font-size: 17px;
    font-weight: 400;
    margin-top: 0;
}

.mds-agreement-wrap .highlight-box{
  background:#edf2f7;
  border-left:4px solid #2c5282;
  padding:16px 18px;
  border-radius:10px;
  margin:15px 0 20px;
}

.mds-agreement-wrap .subsection-title{
  font-size:1.25rem;
  margin:18px 0 8px;
  color:#1a202c;
}

.mds-agreement-wrap .form-grid{
  margin-top:15px;
  text-align: left;
}

.mds-agreement-wrap .form-group{
  display:inline-block;
  width:100%;
  margin:10px 10px 10px 0;
  vertical-align:top;
}

.mds-agreement-wrap .form-label{
  display:block;
  margin:0 0 10px;
  font-weight:600;
  color:#2d3748;
  font-size:1.02rem;
}

.mds-agreement-wrap .form-control{
  width:98%;
  padding:10px 15px;
  border:2px solid #cbd5e0;
  border-radius:8px;
  font-size:1rem;
  transition:.2s ease;
  background:#fff;
}

.mds-agreement-wrap .form-control:focus{
  outline:none;
  border-color:#2c5282;
  box-shadow:0 0 0 3px rgba(44,82,130,.10);
}

.mds-agreement-wrap .selection-group{
  display:flex;
  flex-wrap:wrap;
  gap:15px;
  margin-top:10px;
}

.mds-agreement-wrap .plan-option{
  flex:1;
  min-width:180px;
  padding:20px 15px;
  background:#f7fafc;
  border:2px solid #cbd5e0;
  border-radius:10px;
  cursor:pointer;
  transition:.2s ease;
  text-align:center;
}

.mds-agreement-wrap .plan-option:hover{
  background:#edf2f7;
  transform:translateY(-2px);
}

.mds-agreement-wrap .plan-option.selected{
  background:#2c5282;
  color:#fff;
  border-color:#2c5282;
  box-shadow:0 5px 15px rgba(44,82,130,.20);
}

.mds-agreement-wrap .plan-title{
  font-weight:500;
  font-size:1.2rem;
  margin:0 0 5px;
}

.mds-agreement-wrap .plan-duration{
  font-size:.95rem;
  opacity:.9;
  margin:0 0 8px;
}

.mds-agreement-wrap .plan-price{
  font-weight:500;
  font-size:1.3rem;
}

.mds-agreement-wrap .radio-group{
  display:flex;
  gap: 15px;
  margin-top: 25px;
}

#mdsExhibitA .form-group {
    width: 48%;
}

#mdsPriceEditor input {
    text-align: center;
}

.mds-agreement-wrap .radio-option{
  flex:1;
  min-width:200px;
  display:flex;
  gap:10px;
  align-items:center;
  cursor:pointer;
  padding:30px 20px;
  background:#f7fafc;
  border:2px solid #cbd5e0;
  border-radius:10px;
  transition:.2s ease;
  line-height: 1.3;
  font-size: 17px;
  font-weight: 400;
  justify-content: center;
}

.page-section.location p {
	padding-left: 15px;
}

.mds-agreement-wrap .radio-option:hover{ background:#edf2f7; }

.mds-agreement-wrap .radio-option.selected{
  background:#2c5282;
  color:#fff;
  border-color:#2c5282;
}

.mds-agreement-wrap .custom-radio{
  width:15px;
  height:15px;
  border-radius:50%;
  border:2px solid #a0aec0;
  margin-top:2px;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}

.mds-agreement-wrap .radio-option.selected .custom-radio{
  border-color:#fff;
  background:#fff;
}

.mds-agreement-wrap .radio-option.selected .custom-radio:after{
  content:'';
  width:10px;
  height:10px;
  border-radius:50%;
  background:#2c5282;
}

.mds-agreement-wrap .small-text{
  font-size:.95rem;
  opacity:.85;
}

.mds-agreement-wrap .table-container{
  width:100%;
  overflow-x:auto;
  margin:35px 0 10px;
  border-radius:8px;
  border:1px solid #e2e8f0;
}

.mds-agreement-wrap table{
  width:100%;
  border-collapse:collapse;
  font-size: 14px;
}

.plan {
    text-align: center !important;
    vertical-align: middle;
}

.plan.shading {
    background: #f3f3f3f3;
}

.fa-solid.fa-check {
    font-size: 20px;
}

.tab-text-popular, .tab-text-bvalue {
    position: absolute;
    font-weight: 400;
    font-size: 13px;
    margin-top: -33px;
    background: #1d416d;
    color: #fff;
    padding: 4px 20px;
    border-radius: 15px;
    border: solid 1px #f3f3f3;
}

.tab-text-popular {
    margin-left: -67px;
}

.tab-text-bvalue {
    margin-left: -53px;
}

.clause {
    margin-bottom: 20px;
    padding-left: 10px;
    border-left: 3px solid #e2e8f0;
    padding-top: 5px;
    padding-bottom: 5px;
}

.clause-title {
    font-weight: 600;
    color: #2d3748;
    margin-bottom: 8px;
	font-size: 16px;
}

.clause p {
    font-size: 15px;
}

.clause ol, .clause ul {
    margin-left: 20px;
}

.important-note {
    background-color: #fffaf0;
    border-left: 4px solid #ed8936;
    padding: 18px;
    margin: 20px 0;
    border-radius: 0 8px 8px 0;
	font-size: 14px !important;
}

.signature-grid h3 i {
    color: #e53e3e;
}

.important-note h4 {
    color: #9c4221;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
	font-weight: bold !important;
}

.important-note p {
    font-size: 14px;
}

.page-section.signature {
    background-color: #f8fafc;
    border-radius: 12px;
    padding: 10px 10px 30px 10px;
    margin: 30px 0;
    border: 1px solid #e2e8f0;
}

.page-section.terms {
    padding-left: 25px;
    margin-top: 10px;
    font-size: 15px;
    font-weight: 400;
}

.page-section.terms ol {
    padding-left: 25px;
    margin-top: 10px;
    font-size: 14px;
}

th.plan-title {
    font-size: 14px !important;
}

.mds-agreement-wrap th{
  background:#2c5282;
  color:#fff;
  padding:10px;
  text-align:left;
  font-weight:600 !important;
  vertical-align: middle;
}

.tab-text-winclud {
	display: block;
    margin-left: 10px;
    font-size: 20px;
}

.tab-text-plan {
    display: block;
    font-size: 20px;
}

.tab-text-days {
    font-style: italic;
}

.tab-text-proce-val {
    display: block;
    font-size: 17px;
}

.mds-agreement-wrap td{
  padding:12px 16px;
  border-bottom:1px solid #e2e8f0;
}

.mds-agreement-wrap tr:nth-child(even){
  background:#f7fafc;
}

/* Status */
.mds-agreement-wrap .status-message{
  padding:15px;
  border-radius:8px;
  margin:20px 0 10px;
  display:none;
  font-weight:600;
}
.mds-agreement-wrap .status-message.status-success{
  display:block;
  background:#c6f6d5;
  color:#22543d;
  border:1px solid #9ae6b4;
}
.mds-agreement-wrap .status-message.status-error{
  display:block;
  background:#fed7d7;
  color:#742a2a;
  border:1px solid #fc8181;
}
.mds-agreement-wrap .status-message.status-info{
  display:block;
  background:#bee3f8;
  color:#2c5282;
  border:1px solid #90cdf4;
}

/* Provider info (Access Code box) */
.mds-agreement-wrap .provider-info{
  background:#ebf8ff;
  padding:15px 15px 30px 15px;
  border-radius:10px;
  margin:15px 0 15px;
  border-left:4px solid #4299e1;
}

/* Signatures (tu markup actual) */
.mds-agreement-wrap .signature-grid{
    display: inline-flex;
    gap: 3px;
    margin-top: 18px;
}

.mds-agreement-wrap .signature-card{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:18px;
  box-shadow:0 3px 10px rgba(0,0,0,.05);
}

.mds-agreement-wrap .signature-header h3{
  margin:0 0 12px;
  padding:0 0 10px;
  border-bottom:2px solid #e2e8f0;
  color:#2c5282;
  display:flex;
  align-items:center;
  gap:10px;
  font-size: 1.17em;
}

.mds-agreement-wrap .signature-pad{
  position:relative;
  border:2px dashed #cbd5e0;
  border-radius:12px;
  height:180px;
  background:#fff;
  overflow:hidden;
  touch-action:none;
}

.mds-agreement-wrap .signature-pad canvas{
  width:100% !important;
  height:100% !important;
  display:block;
  border-radius:10px;
  cursor: crosshair;
}

.mds-agreement-wrap .signature-placeholder{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#a0aec0;
  padding:12px;
  pointer-events:none;
  font-style: italic;
}

i.fas.fa-pen-fancy {
    margin-bottom: 0.5em;
}

.fa-pen-fancy:before {
    content: "\f304" !important;
    font-size: 23px;
}

.mds-agreement-wrap .signature-controls{
  display:flex;
  gap:10px;
  margin-top:12px;
}

/* Buttons */
.mds-agreement-wrap .btn{
  padding:12px 18px;
  border:none;
  border-radius:10px;
  font-weight:700;
  cursor:pointer;
  transition:.2s ease;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:1rem;
}

.mds-agreement-wrap .btn-primary{ background:#2c5282; color:#fff; }
.mds-agreement-wrap .btn-primary:hover{ background:#1a3a5f; }

.mds-agreement-wrap .btn-secondary{ background:#e2e8f0; color:#2d3748; }
.mds-agreement-wrap .btn-secondary:hover{ background:#cbd5e0; }

.signature-controls button {
    font-weight: normal !important;
}

.mds-agreement-wrap .action-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:15px;
  margin-top:18px;
  justify-content: flex-end;
}

.radio-option.disabled{
  pointer-events:none;
  opacity:.55;
  cursor:not-allowed;
}


/* Responsive */
@media (max-width:768px){
  .mds-agreement-wrap{ padding:12px; }
  .mds-agreement-wrap .document-body{ padding:0 16px 16px; }
  .mds-agreement-wrap .header{ padding:18px; }
  .mds-agreement-wrap .form-group{ width:100%; margin-right:0; }
  .mds-agreement-wrap .plan-option{ min-width: 31%; padding: 10px 0px;}
  .mds-agreement-wrap .selection-group { gap: 6px; }
  .mds-agreement-wrap .btn{ width:100%; }
  .mds-agreement-wrap table{ min-width:760px; }
  .mds-agreement-wrap .signature-grid {gap: 3px;}
  .mds-agreement-wrap .signature-card {padding: 15px 8px;}
}