* { box-sizing: border-box; }
body { font-family: system-ui, sans-serif; margin: 0; color: #1a1a1a; background: #f5f5f5; }
.topbar { display: flex; gap: 1rem; background: #14532d; padding: .8rem 1rem; }
.topbar a { color: #fff; text-decoration: none; font-weight: 600; }
main { padding: 1rem; max-width: 1100px; margin: 0 auto; }
.flash { background: #fef3c7; padding: .6rem 1rem; }
button, .btn { background: #14532d; color: #fff; border: 0; padding: .7rem 1.2rem;
  border-radius: 8px; font-size: 1rem; }
input, textarea { font-size: 1rem; padding: .6rem; width: 100%; border: 1px solid #ccc;
  border-radius: 8px; }
.review { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.review img { width: 100%; border: 1px solid #ccc; border-radius: 8px; }
table { width: 100%; border-collapse: collapse; }
td, th { border: 1px solid #ddd; padding: .3rem; }
.low { background: #fee2e2; }
@media (max-width: 800px) { .review { grid-template-columns: 1fr; } }
.rv-fields label { display:block; margin-top:.4rem; font-size:13px; color:#444; }
.cards { display:none; }
.ln { border:1px solid #ccc; border-radius:10px; padding:12px; margin-bottom:10px; background:#fff; }
.ln-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
.ln-pos { font-size:13px; color:#555; }
.ln-badge { font-size:12px; color:#14532d; }
.ln-badge.on { background:#dcfce7; padding:2px 8px; border-radius:8px; }
.ln-row { display:flex; gap:8px; }
.ln-row > div { flex:1; }
.ln-actions { display:flex; gap:8px; margin-top:10px; }
.ln-actions .ok.done { background:#14532d; color:#fff; }
.ln-nav { display:none; gap:8px; align-items:center; margin-bottom:10px; }
.ln-nav #prog { flex:1; text-align:center; font-size:13px; color:#555; }
.rv-image img { width:100%; border:1px solid #ccc; border-radius:8px; }
@media (max-width: 700px) {
  .desk { display:none; }
  .cards { display:block; }
  .ln-nav { display:flex; }
  .review { grid-template-columns: 1fr; }
  .rv-image { position: sticky; top: 0; z-index: 5; background:#f5f5f5; padding-bottom:6px; }
  .rv-image img { max-height: 38vh; object-fit: contain; }
}
