/* Fresh light theme with pine green accents */
:root{
  --bg:#f5fbf7; /* light mint */
  --panel:#ffffff; /* white cards */
  --muted:#64748b; /* slate-500 */
  --text:#0f172a; /* slate-900 */
  --accent:#0b6b2a; /* pine green */
  --accent-2:#16a34a; /* green-600 */
  --danger:#b91c1c; /* red-700 */
  --ok:#166534; /* green-800 */
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(180deg,#f0f7f2,#ffffff);
  color:var(--text);
}
.container{max-width:1100px;margin:0 auto;padding:24px}
.card{background:var(--panel);border:1px solid #dbe7de;border-radius:14px;padding:20px;box-shadow:0 8px 24px rgba(1,41,21,.08)}
.header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700}
.brand .dot{width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--accent-2),var(--accent))}
.brand a{color:var(--text);text-decoration:none}
.nav a{color:#4b5563;text-decoration:none;margin-left:14px}
.nav a:hover{color:var(--accent)}
input,select,textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #cfe6d7;background:#ffffff;color:var(--text);outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(11,107,42,.12)}
button,.btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#ffffff;border:none;border-radius:12px;padding:10px 14px;font-weight:600;cursor:pointer;transition:transform .08s ease}
button:hover,.btn:hover{transform:translateY(-1px)}
.btn-outline{background:transparent;color:var(--accent);border:1px solid rgba(11,107,42,.25)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.qr{background:#ffffff;border:1px solid #e3efe7;border-radius:14px;padding:14px;text-align:center}
.qr img{max-width:100%;height:auto;border-radius:8px}
.badge{display:inline-block;padding:4px 8px;border-radius:16px;background:#eef7f0;border:1px solid #d4e8db;color:var(--accent);font-size:12px}
.table{width:100%;border-collapse:separate;border-spacing:0 8px}
.table th,.table td{padding:12px 14px}
.table thead th{color:#355e3b;font-weight:600;text-align:left;border-bottom:1px solid #d9e7dd}
.row{background:#ffffff;border:1px solid #e6f1e9}
.status{font-size:12px;padding:4px 8px;border-radius:10px;background:#eaf5ee;border:1px solid #cde6d6;color:#166534}
.alert{padding:10px 12px;border-radius:10px;border:1px solid #cfe6d7;background:#f0f7f2;color:#0f5132}
.footer{color:#6b7280;font-size:12px;margin-top:24px}
form .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.checkbox-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.small{font-size:12px;color:var(--muted)}
hr{border:0;border-top:1px solid #d9e7dd;margin:18px 0}
.link{color:var(--accent);text-decoration:none}
.link:hover{text-decoration:underline}
.success{color:var(--ok)}
.error{color:var(--danger)}
