.hdasig-cse-box{max-width:900px;margin:20px auto;padding:14px;border:1px solid #e5e5e5;border-radius:10px;background:#fff}
.hdasig-cse-error{border-color:#d63638;color:#d63638}
.hdasig-cse-wrap{max-width:980px;margin:20px auto;padding:16px;border:1px solid #e5e5e5;border-radius:10px;background:#fff}
.hdasig-cse-title{font-size:28px;line-height:1.2;margin:4px 0 14px;}
.hdasig-cse-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;padding:12px;border:1px dashed #ddd;border-radius:8px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){.grid{grid-template-columns:repeat(1,minmax(0,1fr));}}
label{font-size:14px;display:flex;flex-direction:column;gap:6px}
input,select,textarea{padding:8px;border:1px solid #ccc;border-radius:6px}
.inline{margin-right:14px}
.checkbox{display:flex;flex-direction:row;align-items:center;gap:8px;margin:10px 0}
.muted{color:#666;font-size:13px}
.sig-wrap{border:1px solid #ccc;border-radius:8px;padding:10px;margin-bottom:10px}
#hdasig-cse-sign{width:100%;max-width:720px;border:1px dashed #bbb;border-radius:6px;display:block}
.sig-actions{margin-top:8px}
.sig-actions button{padding:6px 10px}
.submit{padding:10px 16px;border:0;border-radius:8px;cursor:pointer}
.hidden{display:none}
.result{margin-top:10px}

.radio-row{display:flex;flex-direction:column;gap:10px;align-items:flex-start;margin:8px 0 16px;}
.radio-row label.inline{display:inline-flex !important;flex-direction:row !important;align-items:center !important;justify-content:flex-start !important;gap:8px;margin:0;width:auto;max-width:100%;position:relative;}
.radio-row label.inline input[type="radio"]{margin:0 !important;float:none !important;position:static !important;transform:none !important;}
.radio-row label.inline span{display:inline-block;line-height:1.1;}

.cse-upload{border:2px dashed #d0d7de;border-radius:10px;padding:16px;background:#fafbfc;margin:8px 0 18px;}
.cse-upload-inner{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;min-height:92px;text-align:center;}
.cse-upload-title{font-weight:600;}
.cse-upload-hint{font-size:12px;color:#666;}
.cse-upload input[type="file"]{display:block;max-width:100%;}
.cse-upload-filename{margin-top:8px;font-size:12px;color:#333;word-break:break-word;}

.grid .cse-row-dob{grid-column:1 / -1;}

/* Theme override fix: keep email field visual same as phone/date inputs */
#hdasig-cse-form input[type="email"],
#hdasig-cse-form input[type="text"],
#hdasig-cse-form input[type="tel"],
#hdasig-cse-form input[type="date"],
#hdasig-cse-form input[type="number"],
#hdasig-cse-form select,
#hdasig-cse-form textarea{background:#fff !important;color:#111 !important;opacity:1;}


/* Strong override for The Gem / theme styles on email input */
#hdasig-cse-form input[name="contact_email"],
#hdasig-cse-form input[type="email"]{
  width:100% !important;
  box-sizing:border-box !important;
  background:#fff !important;
  background-color:#fff !important;
  background-image:none !important;
  background-repeat:no-repeat !important;
  padding-right:8px !important;
  -webkit-appearance:none !important;
  appearance:none !important;
  box-shadow:none !important;
  -webkit-text-fill-color:#111 !important;
}
#hdasig-cse-form input[name="contact_email"]::-webkit-calendar-picker-indicator,
#hdasig-cse-form input[type="email"]::-webkit-calendar-picker-indicator{display:none !important;opacity:0 !important;pointer-events:none !important;}
#hdasig-cse-form input[name="contact_email"]::-webkit-inner-spin-button,
#hdasig-cse-form input[name="contact_email"]::-webkit-clear-button,
#hdasig-cse-form input[name="contact_email"]::-webkit-outer-spin-button{display:none !important;}
#hdasig-cse-form input[name="contact_email"]:-webkit-autofill,
#hdasig-cse-form input[name="contact_email"]:-webkit-autofill:hover,
#hdasig-cse-form input[name="contact_email"]:-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 1000px #fff inset !important;
  -webkit-text-fill-color:#111 !important;
  transition: background-color 9999s ease-out 0s;
}

/* v0.1.25 UX tweaks */
.hdasig-cse-langbox{border:1px dashed #d7d7df;border-radius:10px;padding:12px 14px;margin:10px 0 14px;background:#fff}
.hdasig-cse-lang-q{font-weight:600;margin-bottom:8px}
.hdasig-cse-lang-label{display:flex;flex-direction:column;gap:6px;max-width:320px}
.hdasig-cse-wrap label.req::after{content:' *'; color:#d93025; font-weight:700;}
.hdasig-cse-wrap label.optional::after{content:''}
.hdasig-cse-wrap input[type="text"],
.hdasig-cse-wrap input[type="email"],
.hdasig-cse-wrap input[type="tel"],
.hdasig-cse-wrap input[type="date"],
.hdasig-cse-wrap input[type="number"],
.hdasig-cse-wrap select{height:46px; min-height:46px; line-height:1.2; box-sizing:border-box; background:#fff !important;}
.hdasig-cse-wrap input[name="contact_email"]{height:46px !important; min-height:46px !important; background:#fff !important; appearance:none; -webkit-appearance:none;}
.hdasig-cse-wrap input[readonly]{background:#fff !important; color:#444;}
.hdasig-cse-wrap .radio-row{display:flex; gap:18px; align-items:center;}
.hdasig-cse-wrap .radio-row .inline{display:inline-flex; align-items:center; gap:6px; margin:0;}
.hdasig-cse-wrap .radio-row input[type="radio"]{margin:0; position:static; transform:none;}
.hdasig-cse-wrap .result{white-space:pre-line; color:#b42318;}
.hdasig-cse-wrap input[name="contact_email"]{background-image:none !important;padding-right:12px !important;}

/* v0.1.26 required star after label text */
.hdasig-cse-wrap label{position:relative;}
.hdasig-cse-wrap label.req::after{content:none !important;}
.hdasig-cse-wrap label .hdasig-label-text{display:inline-flex;align-items:center;gap:4px;}
.hdasig-cse-wrap label.req .hdasig-label-text::after{content:"*";color:#d93025;font-weight:700;line-height:1;}
