
:root{--navy:#164d79;--green:#08785f;--bg:#f2f6fa;--text:#182334;--muted:#667085;--line:#d8e1ea;--warn:#fff4dd}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Arial,Helvetica,sans-serif;color:var(--text)}
.wrap{max-width:1120px;margin:auto;padding:14px}.hero{background:linear-gradient(135deg,#165485,#123b5d);color:#fff;border-radius:16px;padding:20px;margin-bottom:16px}
.hero h1{margin:0 0 5px}.top{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.card{background:#fff;border-radius:16px;padding:18px;margin:14px 0;box-shadow:0 4px 16px rgba(0,0,0,.05)}
.btn{display:inline-block;border:0;background:var(--navy);color:white;text-decoration:none;border-radius:10px;padding:11px 15px;font-weight:700;cursor:pointer}
.btn.green{background:var(--green)}.btn.light{background:#e8eef5;color:#1c2938}.btn.danger{background:#923c3c}
.actions{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.full{grid-column:1/-1}
label{font-weight:700;font-size:.9rem}input,select,textarea{width:100%;padding:11px;margin-top:5px;border:1px solid var(--line);border-radius:9px;background:#fff}
textarea{min-height:82px}.section{color:#123f66;margin-top:22px;border-bottom:2px solid #e6edf4;padding-bottom:7px}
.small{font-size:.84rem;color:var(--muted)}.flash{background:#eaf7f2;border-radius:10px;padding:10px 12px}.warning{background:var(--warn);padding:10px;border-radius:10px}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:9px;border-bottom:1px solid var(--line);vertical-align:top}
.badge{padding:4px 8px;background:#edf2f7;border-radius:999px;font-size:.78rem}.thumb{max-width:220px;max-height:160px;border-radius:9px;border:1px solid var(--line)}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compare>div{border:1px solid var(--line);border-radius:12px;padding:13px}.ref{background:#fff8e8}.obs{background:#eef8f4}
.mobile-cards{display:none}.record-card{border:1px solid var(--line);border-radius:12px;padding:12px;margin:9px 0}
@media(max-width:720px){.grid,.compare{grid-template-columns:1fr}.wrap{padding:9px}.desktop-table{display:none}.mobile-cards{display:block}.hero h1{font-size:1.65rem}.full{grid-column:auto}}

.validation-table th{background:#f2f6fa}.status-ok,.gps-ok{color:#08785f;font-weight:700}
.gps-warn{color:#9a6700;font-weight:700}.gps-bad{color:#a13737;font-weight:700}.gps-na{color:#667085}
.evidence-card{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafcfe}

.login-card{max-width:500px;margin:40px auto}.filterbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.filterbar select{width:auto;min-width:160px}.status-ok,.gps-ok{color:#08785f;font-weight:700}.gps-warn{color:#9a6700;font-weight:700}
.gps-bad{color:#a13737;font-weight:700}.gps-na{color:#667085}.evidence-card{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafcfe}

.upload-status{margin-top:20px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.upload-status-title{font-weight:700;margin-bottom:8px;color:#123f66}.upload-progress-track{width:100%;height:12px;border-radius:999px;background:#e1e8ef;overflow:hidden;margin-bottom:8px}.upload-progress-bar{width:0%;height:100%;background:var(--green);transition:width .2s ease}button:disabled{opacity:.65;cursor:not-allowed}
