
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f4f6f8;color:#172033}
.hidden{display:none!important}
header{background:#0d1b2a;color:#fff;padding:calc(16px + env(safe-area-inset-top)) 18px 18px;display:flex;justify-content:space-between;align-items:center}
header b{font-size:27px}
header small{display:block;color:#cdd6e1;margin-top:2px}
.langs button{border:0;background:#22334a;border-radius:8px;padding:7px;font-size:18px;margin-left:3px}
main{max-width:720px;margin:auto;padding:15px}
.card,.modal,.lockcard{background:white;border-radius:18px;padding:16px;margin-bottom:14px;box-shadow:0 5px 20px #0000000d}
h2{font-size:19px;margin:0 0 13px}
.search{display:flex;gap:8px}
input,textarea{width:100%;padding:13px;border:1px solid #ccd5df;border-radius:11px;font-size:16px}
button{border:0;border-radius:11px;padding:12px 14px;font-weight:700;cursor:pointer}
.search button,.blue{background:#1675ee;color:#fff}
.green{background:#36b84a;color:#fff}
.gray{background:#e9eef3;color:#172033}
.red{background:#fff0f0;color:#bd3030}
.full{width:100%}
.item{border:1px solid #e1e6ec;border-radius:13px;padding:13px;margin-top:9px;display:flex;justify-content:space-between;align-items:center}
.meta{font-size:13px;color:#748092;margin-top:4px}
.badge{display:inline-block;padding:6px 9px;border-radius:999px;font-size:12px;font-weight:800}
.badge.valid{background:#e8f8eb;color:#24833a}
.badge.provisional{background:#fff4d9;color:#966400}
dialog{border:0;border-radius:20px;width:min(680px,calc(100% - 18px));padding:0}
dialog::backdrop{background:#06101dbb}
.modal{margin:0;max-height:90vh;overflow:auto;position:relative}
.x{position:absolute;right:12px;top:12px;background:#edf1f5}
label{display:block;font-size:14px;font-weight:700;margin:11px 0}
label input,label textarea{margin-top:6px;font-weight:400}
.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gps{background:#eef8f0;border-radius:12px;padding:11px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.geo-status{margin-top:10px;padding:10px;border-radius:10px;font-size:13px;background:#eef4ff;color:#2f5f9f}
.actions{display:grid;gap:9px;margin-top:15px}
.detailrow{border-bottom:1px solid #e5e9ee;padding:11px 0}
.detailrow small{display:block;color:#748092}
.detailrow b{display:block;margin-top:3px}
.lock{min-height:100vh;background:#0d1b2a;display:grid;place-items:center;padding:20px}
.lockcard{text-align:center;width:min(360px,100%);margin:0}
.logo{margin:auto;width:64px;height:64px;background:#36b84a;color:#fff;border-radius:20px;display:grid;place-items:center;font-size:34px;font-weight:900}
.logo span{font-size:18px}
.lockcard h1{margin-bottom:4px}
.lockcard button{width:100%;background:#36b84a;color:#fff;margin-top:10px}
.error{color:#bd3030;min-height:20px}
@media(max-width:520px){.search{flex-direction:column}.two{grid-template-columns:1fr}}

.photo-box{
  margin:12px 0;
  padding:12px;
  border:1px solid #dbe4ee;
  background:#f7faff;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.ocr-panel{
  margin:10px 0 12px;
  padding:10px;
  background:#f7f8fa;
  border-radius:12px;
  border:1px solid #e3e8ee;
}
#ocrPreview{
  width:100%;
  max-height:240px;
  object-fit:contain;
  border-radius:10px;
  background:#fff;
  margin-bottom:8px;
}
#ocrTextWrap{margin-top:8px}
#ocrText{
  white-space:pre-wrap;
  font-size:12px;
  line-height:1.35;
  max-height:140px;
  overflow:auto;
  background:#fff;
  border:1px solid #e1e6ec;
  padding:8px;
  border-radius:8px;
}

#cancelNoSave{margin-top:10px}
