.sa-dialog{width:min(900px,94vw);max-width:94vw;max-height:92dvh;padding:0;border:1px solid #b79959;border-radius:18px;background:var(--paper,#143a3a);color:var(--ink,#f6f3e9)}.sa-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #b7995944}.sa-dialog h2{margin:4px 0 12px;font-size:24px}.sa-content{padding:22px;overflow:auto}.sa-dialog label{display:grid;gap:7px;margin:14px 0}.sa-dialog input,.sa-dialog select,.sa-dialog textarea{width:100%;box-sizing:border-box;font:inherit;padding:12px;border-radius:10px}.sa-dialog button{min-height:44px;padding:10px 18px;cursor:pointer}.sa-primary{background:#d2b26f!important;color:#163a30!important;font-weight:700}.sa-summary,.sa-toolbar,.sa-brand{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}.sa-summary{padding:18px;border:1px solid #b7995966;border-radius:12px}.sa-note{font-size:14px;line-height:1.7;opacity:.85}.sa-list{display:grid;gap:12px}.sa-row{display:grid;gap:8px;text-align:start;width:100%;overflow-wrap:anywhere}.sa-voucher{background:#fff;color:#173b32;padding:24px;border-radius:12px;line-height:1.6}.sa-brand{border-bottom:2px solid #b79959;padding-bottom:16px}.sa-brand img{width:32px;height:50px;object-fit:contain}.sa-brand strong{margin-inline-end:auto}.sa-brand small{display:block;letter-spacing:2px;font-size:10px}.sa-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.sa-grid small,.sa-grid strong{display:block}.sa-grid small{color:#63766e}.sa-lines p{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #dce4df;padding:9px 0;margin:0}.sa-dialog canvas{display:block;width:100%;height:auto;aspect-ratio:600/220;touch-action:none;background:#fff;border:1px solid #b79959;border-radius:10px;box-sizing:border-box}.sa-sign{padding-top:20px}.sa-hash{display:block;overflow-wrap:anywhere;font-size:10px;margin-top:12px}#sa-error{color:#ffb8a8;padding:0 22px;white-space:pre-wrap}.sa-dialog::backdrop{background:#001b22aa}html[data-theme=light] .sa-dialog{background:#eef4ef;color:#153b32}html[data-theme=light] #sa-error{color:#a52619}@media(max-width:520px){.sa-content{padding:12px}.sa-voucher{padding:16px}.sa-grid{gap:12px}.sa-dialog h2{font-size:20px}.sa-toolbar button{flex:1}}
/* Layout2: explicit readiness, bounded body and usable touch signature. */
#sa-dialog{--sa-ready:3;box-sizing:border-box;width:min(820px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:0;overflow:hidden}
#sa-dialog[open]{display:flex;flex-direction:column}
#sa-dialog *{box-sizing:border-box;min-width:0}
#sa-dialog>header{flex:none;padding:12px 16px;gap:12px}
#sa-dialog>header h2{font-size:20px;margin:3px 0}
#sa-dialog>header button{flex:none}
#sa-dialog .sa-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:16px;scroll-padding-block:12px}
#sa-dialog .sa-voucher{padding:18px;overflow-wrap:anywhere}
#sa-dialog .sa-brand{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;padding-bottom:12px}
#sa-dialog .sa-brand img{display:block;width:32px;height:50px;max-width:32px;object-fit:contain}
#sa-dialog .sa-brand>b{grid-column:1/-1;font-size:13px;color:#526f61}
#sa-dialog .sa-brand strong{font-size:17px}
#sa-dialog .sa-grid{gap:12px;margin:14px 0}
#sa-dialog .sa-grid strong{font-size:15px;overflow-wrap:anywhere}
#sa-dialog .sa-grid small{font-size:12px}
#sa-dialog h3{font-size:17px;margin:12px 0 8px}
#sa-dialog .sa-lines{max-height:180px;overflow:auto}
#sa-dialog .sa-lines b{white-space:nowrap}
#sa-dialog .sa-sign{padding:16px 0 8px;scroll-margin-top:8px}
#sa-dialog .sa-sign canvas{height:170px;width:100%;aspect-ratio:auto;touch-action:none}
#sa-dialog .sa-sign textarea{min-height:60px}
#sa-dialog .sa-jump{width:100%;margin-bottom:12px}
#sa-dialog .sa-toolbar{gap:8px;margin-top:12px}
#sa-dialog .sa-toolbar button{flex:1}
#sa-dialog #sa-error:empty{display:none}
#sa-dialog #sa-error{flex:none;margin:0;padding:8px 16px;font-size:14px;max-height:90px;overflow:auto}
@media(max-width:520px){#sa-dialog .sa-content{padding:10px}#sa-dialog .sa-voucher{padding:14px}#sa-dialog .sa-sign canvas{height:160px}#sa-dialog>header{padding:10px 12px}}

/* Safari: definite block size prevents zero-basis flex content collapse. */
#sa-dialog{height:min(900px,calc(100vh - 24px));height:min(900px,calc(100dvh - 24px))}
#sa-dialog .sa-content{flex:1 1 auto}

.inv236-confirm{display:flex!important;align-items:center;gap:10px!important;font-size:14px}.inv236-confirm input{width:24px!important;height:24px!important;min-height:24px!important;flex:none}.inv236-evidence{border:1px solid var(--line);border-radius:12px;padding:14px;margin:12px 0}.inv236-choices select{font-size:16px;min-height:48px}.inv236-evidence small{color:var(--muted)}
