body{ font-family: Arial, sans-serif; background:#f4f6f9; margin:0; padding:0; color:#222;}
.wrap{ max-width:900px; margin:30px auto; padding:10px;}
header{ display:flex; justify-content:space-between; align-items:center; margin-bottom:20px;}
.card{ background:#fff; padding:18px; border-radius:8px; box-shadow:0 2px 6px rgba(0,0,0,.06); margin-bottom:14px;}
.auth-box{ width:360px; margin:70px auto; padding:20px; background:#fff; border-radius:8px; box-shadow:0 2px 8px rgba(0,0,0,.08);}
.auth-box input, .auth-box textarea{ width:100%; padding:8px; margin:6px 0; border:1px solid #ddd; border-radius:4px;}
.auth-box button{ padding:10px 14px; border:none; background:#197278; color:#fff; border-radius:6px; cursor:pointer;}
.nav{ font-size:14px;}
.error{ background:#ffe6e6; color:#a30000; padding:8px; border-radius:4px; margin-bottom:8px;}
button.danger{ background:#C44536; color:#fff; border:none; padding:8px 12px; border-radius:6px;}

/* Pulsating button */
.pulse{
  padding:18px 28px;
  border-radius:999px;
  border:none;
  background:#197278;
  color:#fff;
  font-weight:600;
  cursor:pointer;
  position:relative;
  outline:none;
}
.pulse::after{
  content:'';
  position:absolute;
  left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:100%; height:100%;
  border-radius:999px;
  z-index:-1;
  animation: pulse 2s infinite;
  box-shadow:0 0 0 0 rgba(25,114,120,0.4);
}
@keyframes pulse{
  0%{ transform:translate(-50%,-50%) scale(1); opacity:1; }
  80%{ transform:translate(-50%,-50%) scale(1.9); opacity:0; }
  100%{ transform:translate(-50%,-50%) scale(2.2); opacity:0; }
}
.report{ width:100%; border-collapse: collapse; }
.report th, .report td{ padding:6px 8px; border:1px solid #eee; text-align:left; font-size:13px;}
