/* Field-first layout; no dependency on a UI framework. */
:root { --muted:#665d53; --sec:#514b43; }
.btn,.scan,button,input,select { min-height:44px; }
button,a,input,select,textarea { touch-action:manipulation; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid #267341;outline-offset:3px; }
input,select,textarea { font-size:16px!important; }
.quick-actions { display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:20px 0; }
.quick-actions a { display:flex;align-items:center;justify-content:center;min-height:68px;text-decoration:none;font-weight:700; }
.field-toolbar { display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:18px 0; }
.field-toolbar label { display:grid;gap:6px;font-size:14px;font-weight:600; }
.field-toolbar select,.field-toolbar input { padding:8px;border:1px solid var(--line);border-radius:8px;background:white; }
.table-scroll { overflow-x:auto; }
.report-note { padding:14px;border-left:4px solid var(--leaf);background:#eff6ef;margin:16px 0; }
.coverage { height:10px;border-radius:6px;background:#e4e6df;overflow:hidden;margin:12px 0; }
.coverage span { display:block;height:100%;background:var(--leaf); }
.mobile-nav { display:none; }
.muted { color:var(--muted); }
.shared-form { display:grid;gap:16px; }
.shared-form label { display:grid;gap:6px;font-weight:600; }
.shared-fields { display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px; }
.shared-fields[hidden] { display:none; }
.shared-form input,.shared-form select,.shared-form textarea { width:100%;box-sizing:border-box;padding:10px;border:1px solid var(--line);border-radius:8px;background:white; }
.shared-targets { max-height:320px;overflow:auto; }
.shared-targets td:last-child { overflow-wrap:anywhere; }
.shared-confirm { display:flex;align-items:center;gap:10px;margin:18px 0; }
.shared-confirm input { min-width:24px; }
button:disabled { opacity:.55;cursor:not-allowed; }
@media(max-width:920px) {
 .mobile-nav { display:flex;gap:4px;position:sticky;top:0;z-index:900;padding:8px;background:#fff;border-bottom:1px solid var(--line);overflow-x:auto; }
 .mobile-nav a { flex:1;min-width:75px;padding:10px 8px;text-align:center;color:var(--walnut);font-size:13px;text-decoration:none;border-radius:8px; }
 .mobile-nav a.active { background:#edf4e9;font-weight:800; }
 .top { flex-wrap:wrap;padding:12px;gap:8px; }
 .top .search { flex:1;min-width:200px; }
 .who { margin-left:0; }.who #userEmail { max-width:140px;overflow:hidden;text-overflow:ellipsis; }
 .view { padding:16px; }.form { grid-template-columns:1fr;gap:6px; }.form label { margin-top:8px; }
 .card { overflow-x:auto; }.phead .qrbox { display:none; }
 .tabs { flex-wrap:nowrap;overflow-x:auto; }.tabs button { white-space:nowrap; }
 .bit { flex-wrap:wrap; }.bit .dt { white-space:normal; }
}
@media print { .mobile-nav,.field-toolbar,.quick-actions { display:none!important; } .table-scroll { overflow:visible; } }
