/* Calm typography and progress that belongs to the selected document. */
.work-section h2{font-size:1.35rem;letter-spacing:-.02em;font-weight:750;line-height:1.3}
.work-section h3{letter-spacing:-.012em;line-height:1.4;font-weight:700}
.work-section p,.work-section input,.work-section textarea,.work-section select{line-height:1.6}
.field>span{font-weight:650;font-size:.9375rem;letter-spacing:0}
.field input,.field textarea,.field select{font-size:1rem;font-weight:500;color:#172c47;background:#fbfcff}
.field input[type=date],.field input[inputmode=numeric],.progress-percent{font-variant-numeric:tabular-nums}
.upload-block{margin:18px 0}.upload-block .upload-card{margin:0}.upload-links{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;margin-top:12px}.upload-links .button{font-size:.875rem;padding:6px 0;min-height:38px;font-weight:650}.upload-links .icon{width:18px;height:18px}.upload-copy p{overflow-wrap:anywhere}.upload-card .upload-copy{flex:1;min-width:0}
.recognition-progress{display:block;margin:0;border:1px solid #d8e5ff;border-top:0;border-radius:0 0 18px 18px;background:#f2f6ff;padding:18px 22px;animation:none}
.recognition-progress .progress-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;font-size:.9375rem;font-weight:650;color:#24426a}
.progress-percent{font-size:1.25rem;color:#2058cb;min-width:3.5em;text-align:right}
.progress-track{height:9px;background:#dce6f9;border-radius:10px;overflow:hidden;margin:12px 0}.progress-track>span{height:100%;display:block;background:linear-gradient(90deg,#3974f2,#26a48c);border-radius:inherit;transition:width .35s ease-out}
.recognition-progress .progress-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.progress-caption small{font-size:.8125rem;color:#526b8a}.recognition-progress .button{margin:0;padding:4px;min-height:30px;font-size:.8125rem}
.upload-error{border:1px solid #f2cccc;border-radius:14px;background:#fff5f4;color:#922b28;padding:17px 20px;margin-top:10px}.upload-error p{color:inherit;margin:5px 0;font-size:.9375rem}.upload-error small{font-size:.8125rem}.upload-complete{display:flex;gap:9px;align-items:center;font-size:.875rem;color:#08684e;padding:12px 4px}.upload-complete .icon{width:18px}
.search-feedback{display:block;color:#576b84;font-size:.8125rem;margin-top:7px}.field select[size]:not([size="1"]){background:#fff;padding:8px;min-height:120px;max-height:260px}.field select[size] option{padding:10px 12px;white-space:normal;border-radius:8px}
dialog.scan-help-dialog{width:min(1100px,calc(100vw - 32px));max-width:1100px;padding:34px;overflow:auto}.scan-intro{margin:14px 0 24px;max-width:850px}.quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.quality-card{min-width:0;border:1px solid #dce4ef;border-radius:18px;overflow:hidden;background:#fff;padding-bottom:17px}.quality-preview{display:block;width:100%;padding:12px;background:#edf2f8;border:0;overflow:hidden;aspect-ratio:1.6;cursor:zoom-in}.quality-preview img{display:block;width:100%;height:auto;box-shadow:0 4px 12px #24385a20}.quality-card.good img{transform:rotate(-2deg) scale(.94)}.quality-card.bad img{filter:blur(3.3px);transform:scale(1.02)}.quality-card h3{padding:16px 17px 6px;color:#08765b;font-size:1rem}.quality-card.bad h3{color:#a13833}.quality-card p{padding:0 17px;font-size:.875rem;line-height:1.6}.quality-grid+.small-text{margin-top:14px}.scan-checklist{margin:23px 0;padding:20px 22px;border-radius:16px;background:#f2f6fc}.scan-checklist li{margin:9px 0;font-size:.9375rem;color:#405873}.scan-checklist ul{padding-left:20px}.sample-types{margin:20px 0}.sample-types summary{cursor:pointer;font-weight:750;color:#285cc9;min-height:44px}.sample-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:10px 0 20px}.sample-type-grid figure{margin:0;border:1px solid #e0e7f2;border-radius:12px;overflow:hidden}.sample-type-grid figcaption{padding:12px;font-weight:650;font-size:.875rem}.sample-types p{font-size:.875rem;margin:12px 0}.reference-links a{text-decoration:underline}.zoom-example{margin:22px 0;padding:16px;background:#edf2f8}.zoom-example img{display:block;width:100%;height:auto}.zoom-example.bad img{filter:blur(5px)}
@media(max-width:640px){.recognition-progress{padding:15px}.recognition-progress .progress-heading{font-size:.875rem}.recognition-progress .progress-caption{gap:8px;align-items:flex-start}.progress-caption small{font-size:.8125rem}.upload-links{gap:6px 12px}.upload-links .button{font-size:.875rem}.quality-grid,.sample-type-grid{grid-template-columns:1fr}.quality-preview{aspect-ratio:1.8}.quality-card.bad img{filter:blur(4px)}dialog.scan-help-dialog{padding:26px 18px}.scan-checklist{padding:17px}.work-section h2{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){.progress-track>span{transition:none}}
