:root{--green:#2dbf7b;--green-2:#e9f8f0;--ink:#1f2937;--muted:#6b7280;--bg:#fff}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Arial;color:var(--ink);background:var(--bg)}
header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--green-2);border-bottom:1px solid #d2f2e3}
header img.logo{height:40px;width:auto}
header h1{margin:0;font-size:1.25rem;text-align:center;flex:1}
.nav{display:flex;gap:8px}
.nav a,.nav button{appearance:none;text-decoration:none;color:#fff;background:var(--green);padding:8px 12px;border-radius:10px;border:0;cursor:pointer}
main{max-width:1200px;margin:24px auto;padding:0 16px}
footer{margin-top:32px;padding:16px;text-align:center;color:var(--muted);border-top:1px solid #eef2f7}
.card{background:#fff;border:1px solid #eef2f7;border-radius:16px;padding:16px;box-shadow:0 1px 2px rgba(0,0,0,.04);margin-bottom:16px}
.filters{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end}
.input,select{width:100%;padding:10px 12px;border:1px solid #dbe3ea;border-radius:12px;font:inherit}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;text-decoration:none;border:0;cursor:pointer;font-weight:600}
.btn.secondary{background:#f3f4f6;color:#111827}
.btn.link{background:transparent;color:var(--green)}
.table-wrap{overflow:auto;border:1px solid #eef2f7;border-radius:12px}
table{width:100%;border-collapse:collapse;font-size:.95rem}
thead th{position:sticky;top:0;background:#fafafa;border-bottom:1px solid #e5e7eb;padding:10px;text-align:left;white-space:nowrap}
tbody td{border-top:1px solid #f1f5f9;padding:10px;vertical-align:top}
tbody tr:hover{background:#fbfefb}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--green-2);color:#0a8c57;font-size:.8rem;border:1px solid #d2f2e3}
.cell-notes,.cell-doc{max-width:420px}
.links a{display:inline-block;margin-right:8px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.actions a{margin-right:8px}
.today{background:#f0fff6}
.small{color:var(--muted);font-size:.85rem}
@media print{
  header .nav, .filters, .actions, .small { display:none !important }
  .card, .table-wrap{border:0;box-shadow:none}
  thead th{background:#fff;border:1px solid #ddd}
  tbody td{border:1px solid #eee}
}