:root { --brand:#0f766e; --brand2:#134e4a; --bg:#f4f7fb; }
body{background:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#15202b}.app-nav{background:linear-gradient(135deg,var(--brand2),var(--brand));box-shadow:0 6px 24px rgba(0,0,0,.12)}.hero{background:linear-gradient(135deg,#134e4a,#0f766e 55%,#14b8a6);border-radius:28px;color:white;padding:48px;box-shadow:0 20px 45px rgba(15,118,110,.25)}.card{border:0;border-radius:22px;box-shadow:0 12px 35px rgba(15,23,42,.08)}.stat{border-radius:22px;padding:22px;background:white;box-shadow:0 12px 35px rgba(15,23,42,.08)}.stat .label{font-size:.85rem;color:#64748b}.stat .value{font-size:2rem;font-weight:800}.btn-brand{background:var(--brand);color:white;border:0}.btn-brand:hover{background:var(--brand2);color:white}.person-photo{width:76px;height:76px;border-radius:18px;object-fit:cover;background:#e2e8f0}.scan-photo{width:220px;height:220px;border-radius:32px;object-fit:cover;background:#e2e8f0}.table{vertical-align:middle}.qr-box{font-family:monospace;background:#ecfeff;border-radius:12px;padding:8px 10px;display:inline-block}.badge-approved{background:#dcfce7;color:#166534}.badge-denied{background:#fee2e2;color:#991b1b}.form-control,.form-select{border-radius:14px;padding:.75rem .9rem}.login-wrap{max-width:480px;margin:auto}.action-tile{display:block;text-decoration:none;color:inherit;background:white;border-radius:22px;padding:20px;box-shadow:0 12px 35px rgba(15,23,42,.08);transition:.2s}.action-tile:hover{transform:translateY(-2px);color:inherit}.scan-panel{min-height:calc(100vh - 140px);display:grid;place-items:center}.big-input{font-size:1.35rem;padding:1rem 1.2rem}
.profile-photo{width:230px;height:230px;border-radius:34px;object-fit:cover;background:#e2e8f0}.input-group .form-control{border-top-right-radius:0;border-bottom-right-radius:0}.input-group .btn{border-top-right-radius:14px;border-bottom-right-radius:14px}

/* v3.3 scanner result colors */
.scan-panel.scan-approved,
.scan-panel.scan-denied{
  border-radius:28px;
  padding:22px;
  transition:background .25s ease, color .25s ease;
}
.scan-panel.scan-approved{background:#16a34a;color:#ffffff;}
.scan-panel.scan-denied{background:#dc2626;color:#ffffff;}
.scan-panel.scan-approved .scanner-result-card,
.scan-panel.scan-denied .scanner-result-card{
  background:rgba(255,255,255,.14);
  color:#ffffff;
  border:1px solid rgba(255,255,255,.32);
  box-shadow:0 20px 45px rgba(0,0,0,.22);
}
.scan-panel.scan-approved .scanner-form-card,
.scan-panel.scan-denied .scanner-form-card{
  background:#ffffff;
  color:#15202b;
}
.scan-panel.scan-approved .form-text,
.scan-panel.scan-denied .form-text{color:#475569!important;}
.scan-panel.scan-approved .result-status,
.scan-panel.scan-denied .result-status{color:#ffffff!important;text-shadow:0 2px 8px rgba(0,0,0,.22);}
.scan-photo-wrap{display:flex;align-items:center;justify-content:center;width:100%;}
.scan-panel.scan-approved .scan-photo,
.scan-panel.scan-denied .scan-photo{
  display:block;
  margin-left:auto;
  margin-right:auto;
  border:6px solid rgba(255,255,255,.92);
  box-shadow:0 16px 34px rgba(0,0,0,.28);
}
.result-qr-box{background:rgba(255,255,255,.92);color:#0f172a;}
