.activity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.activity-card{border:1px solid #dce8e0;border-radius:16px;padding:16px;background:#fff;cursor:pointer;text-align:left}
.activity-card:hover,.activity-card.active{border-color:#2e6b4b;box-shadow:0 0 0 3px rgba(46,107,75,.10)}
.activity-card strong{display:block}.activity-card small{display:block;color:#607068;margin-top:6px}
.activity-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.evidence-row{border:1px solid #dce8e0;border-radius:12px;padding:12px;margin:8px 0}
.evidence-row header{display:flex;justify-content:space-between;gap:12px}
.gp-state{padding:12px 14px;border-radius:12px;background:#edf5f0;margin:12px 0}
.review-msg{padding:10px 12px;border-left:4px solid #2e6b4b;background:#f6faf7;margin:8px 0}
@media(max-width:700px){.activity-actions .btn{width:100%}}

/* MEDIA-1 — private camera/photo/video capture */
.media1-capture-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.media1-file-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.media1-camera-panel,.media1-selected{margin:14px 0;border:1px solid #cadfd1;border-radius:18px;padding:14px;background:#f7fbf8}
.media1-camera-head,.media1-selected-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.media1-camera-head strong,.media1-camera-head small{display:block}.media1-camera-head small{margin-top:4px;color:#607068}
.media1-live-frame{position:relative;overflow:hidden;border-radius:16px;background:#0c1510;aspect-ratio:16/9;display:grid;place-items:center}
.media1-live-frame video{display:block;width:100%;height:100%;object-fit:contain;background:#0c1510}
.media1-camera-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:12px}
.media1-recording-timer{font-variant-numeric:tabular-nums;font-weight:900;color:#8a2e28;background:#fff0ee;border-radius:999px;padding:8px 10px}
.media1-privacy-note{margin:12px 0 0;padding:11px 13px;border-radius:12px;background:#fff8e7;color:#655115;line-height:1.5;font-size:.9rem}
.media1-preview{display:grid;place-items:center;min-height:120px;border:1px solid #dce8e0;border-radius:14px;background:#fff;overflow:hidden}
.media1-preview img,.media1-preview video{display:block;max-width:100%;max-height:420px}
.media1-document-preview{padding:28px;text-align:center;font-weight:800;color:#435248}
.media1-file-meta{margin-top:9px;font-size:.86rem;color:#607068;word-break:break-word}
.media1-selected>p{margin:9px 0 0;font-size:.88rem;color:#506158}
.media1-confirm{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:10px!important;padding:12px 14px;border:1px solid #dce8e0;border-radius:12px;background:#fbfdfb}
.media1-confirm input{margin-top:3px;min-height:auto!important}
@media(max-width:700px){
  .activity-actions .btn,.media1-capture-actions .btn,.media1-camera-controls .btn{width:100%}
  .media1-capture-actions,.media1-camera-controls{display:grid;grid-template-columns:1fr}
  .media1-camera-head,.media1-selected-head{display:grid}
  .media1-camera-head .btn,.media1-selected-head .btn{width:100%}
  .media1-live-frame{aspect-ratio:3/4}
  .media1-preview img,.media1-preview video{max-height:520px}
}

/* MEDIA-2 — quality + MB reduction */
.media2-quality-guide{display:grid;gap:4px;margin:10px 0 14px;padding:12px 14px;border:1px solid #d8e6dc;border-radius:14px;background:#f7fbf8}
.media2-quality-guide strong{color:#174c32}
.media2-quality-guide span{font-size:.88rem;line-height:1.45;color:#607068}
.media2-quality-status{margin-top:9px;padding:10px 12px;border-radius:12px;background:#edf6f0;color:#244e38;font-size:.86rem;line-height:1.45;font-weight:700}

.media2-detail-toggle{display:flex;align-items:flex-start;gap:9px;margin-top:7px;padding-top:9px;border-top:1px solid #dce8e0;font-size:.84rem;line-height:1.45;color:#41564a}
.media2-detail-toggle input{margin-top:3px;min-height:auto!important}

/* MEDIA-3 — private intake metadata */
.media3-intake-note{margin-top:8px;padding:10px 12px;border-radius:12px;background:#f6f8f6;color:#4d5e53;font-size:.82rem;line-height:1.5}
.media3-evidence-meta{display:block;margin-top:4px;color:#607068;line-height:1.4}
