/* Electronic signature pad + stamp (shared by /endorsements/ and /logbook/) */
.es-dialog{border:0;border-radius:16px;padding:0;width:min(640px,calc(100vw - 24px));max-height:calc(100vh - 24px);box-shadow:0 20px 60px rgba(7,26,51,.35);color:var(--ink)}
.es-dialog::backdrop{background:rgba(7,26,51,.55)}
.es-form{padding:20px 22px 18px;display:grid;gap:12px}
.es-top{display:flex;justify-content:space-between;align-items:center}
.es-top h2{font-size:1.25rem;margin:0}
.es-x{background:none;border:0;font-size:1.8rem;line-height:1;color:var(--muted);cursor:pointer;padding:0 6px}
.es-summary{font-family:Georgia,"Times New Roman",serif;font-size:.95rem;line-height:1.5;background:#FBFCFE;border:1px solid var(--line);border-radius:10px;padding:10px 12px;max-height:150px;overflow:auto}
.es-summary small{display:block;font-family:var(--font);color:var(--muted);margin-bottom:4px}
.es-signer{border:1px solid var(--line);border-radius:10px;padding:8px 12px 10px;margin:0}
.es-signer legend{font-weight:700;color:var(--navy);font-size:.9rem;padding:0 4px}
.es-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.es-signer label{font-size:.82rem;margin:4px 0 0}
.es-signer input,.es-signer select{padding:8px 10px;font-size:15px;margin-top:2px}
.es-padwrap{position:relative;border:2px dashed #9FB3CB;border-radius:12px;background:#fff;height:180px}
.es-pad{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair;border-radius:10px;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
.es-baseline{position:absolute;left:18px;right:18px;bottom:34px;border-top:1px solid #B9C7D8;font-size:.72rem;color:var(--muted);padding-top:2px;pointer-events:none}
.es-padbtns{display:flex;gap:12px;align-items:center}
.es-hint{font-size:.84rem;color:var(--muted)}
.es-intent{font-size:.92rem}
.es-err{color:#B42318;font-weight:600;font-size:.9rem;margin:0;min-height:1.2em}
.es-actions{display:flex;justify-content:flex-end;gap:8px}
.es-note{font-size:.8rem;color:var(--muted);margin:0}
.es-stamp{position:relative;border:1px solid var(--line);border-left:4px solid #2DA44E;border-radius:10px;background:#fff;padding:10px 14px;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:center}
.es-stamp.is-void{border-left-color:#B42318;background:#FFF7F6}
.es-sigimg{grid-row:1/3;width:190px;height:auto;max-height:70px;object-fit:contain}
.es-stampline{display:none}
.es-stamptext{font-size:.82rem;line-height:1.45;color:var(--ink)}
.es-iso{color:var(--muted);font-size:.92em;word-break:break-all}
.es-badgewrap{grid-column:2}
.es-badge{display:inline-block;font-size:.78rem;font-weight:700;border-radius:999px;padding:2px 10px;background:var(--bg-alt);color:var(--muted)}
.es-badge.ok{background:#E8F6EC;color:#1E6B37}
.es-badge.bad{background:#FDECEA;color:#B42318}
.es-void{position:absolute;right:12px;top:8px;font:800 1.1rem/1 var(--font);letter-spacing:.2em;color:#B42318;border:2px solid #B42318;border-radius:6px;padding:3px 8px;transform:rotate(-6deg)}
@media (max-width:560px){.es-row{grid-template-columns:1fr}.es-stamp{grid-template-columns:1fr}.es-sigimg{grid-row:auto;width:160px}.es-badgewrap{grid-column:1}.es-padwrap{height:170px}}
@media print{
  .es-dialog{display:none!important}
  .es-stamp{border:0;border-top:1px solid #000;border-radius:0;padding:.04in 0 0;background:none;display:grid;grid-template-columns:auto 1fr;gap:0 .15in}
  .es-stamp.is-void{background:none}
  .es-sigimg{width:2.1in;max-height:.6in}
  .es-stamptext{font:7.5pt/1.35 Arial,Helvetica,sans-serif;color:#000}
  .es-iso{color:#333}
  .es-void{color:#000;border-color:#000}
  .es-badgewrap{display:none}
}
