.tpr-modal{display:none;position:fixed;z-index:50;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.5);justify-content:center;align-items:center}
.tpr-modal.active{display:flex}
.tpr-modal-content{background:var(--tpr-modal-bg,#fff);padding:28px;border-radius:var(--tpr-modal-br,10px);position:relative;max-width:720px;width:90%;color:var(--tpr-font-color,#000);max-height:calc(var(--tpr-modal-h,9999px));overflow:auto}
#tpr-close{position:absolute;top:12px;right:16px;cursor:pointer;font-size:22px;color:#333}
.tpr-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:640px){ .tpr-grid{grid-template-columns:1fr} }
.tpr-field.full{grid-column:1 / -1}
#tpr-form input,#tpr-form textarea{width:90%;padding:12px 14px;border:1px solid #ccc;border-radius:6px;background:#fafafa}
#tpr-submit-btn{background:#cc0000;color:#fff;border:none;padding:12px 24px;cursor:pointer;border-radius:6px;font-size:16px;width:100%;margin-top:8px;transition:transform .12s ease, box-shadow .12s ease, filter .12s ease}
#tpr-submit-btn.tpr-hover-anim:hover{transform:translateY(-1px); filter:brightness(1.04); box-shadow:0 6px 18px rgba(0,0,0,.12)}
.tpr-consents-stack{display:flex;flex-direction:column;gap:8px;margin:8px 0 4px}
.tpr-consent{display:flex;align-items:flex-start;gap:8px}


/* Select styling aligned with inputs/textarea, isolated to the plugin form */
#tpr-modal #tpr-form select {
  width: 100%;
  padding: 12px 38px 12px 14px;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #fafafa;
  font: inherit;
  color: inherit;
  line-height: 1.2;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%23555' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px 8px;
}
#tpr-modal #tpr-form select:focus {
  outline: none;
  border-color: #999;
  background-color: #fff;
  box-shadow: 0 0 0 3px rgba(0,0,0,.04);
}
#tpr-modal #tpr-form .tpr-field.half select,
#tpr-modal #tpr-form .tpr-field.full select { min-height: var(--tpr-field-h, 40px); }



/* Ensure consents span full width and stack lines */
#tpr-modal #tpr-form .tpr-consents-stack {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 12px 0 8px;
  width: 100%;
  grid-column: 1 / -1; /* if placed inside a grid, span all columns */
}
#tpr-modal #tpr-form .tpr-consent { width: 100%; }


/* Discount message */
.tpr-discount-info{padding:8px 12px;border:1px dashed #999;}
