/* ===== AUTH PAGES (login/register/dashboard) ===== */
.auth-section{padding:64px 0 96px}
.auth-card{max-width:440px;margin:0 auto;padding:40px}
.auth-card h1{font-size:1.8rem;margin-bottom:8px}
.auth-card .sub{margin-bottom:28px}

.field{margin-bottom:18px;text-align:left}
.field label{display:block;font-family:var(--sans);font-weight:600;font-size:.85rem;color:var(--navy);margin-bottom:6px}
.field input{
  width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);
  font-family:var(--sans);font-size:1rem;color:var(--ink);background:var(--paper);
  transition:border-color .2s var(--ease), box-shadow .2s var(--ease);
}
.field input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.18)}
.field-hint{display:block;margin-top:6px;font-size:.78rem;color:var(--muted)}

.password-wrap{position:relative}
.password-wrap input{padding-right:44px}
.password-toggle{
  position:absolute;top:50%;right:6px;transform:translateY(-50%);
  width:32px;height:32px;display:flex;align-items:center;justify-content:center;
  background:none;border:none;cursor:pointer;color:var(--muted);border-radius:8px;
}
.password-toggle:hover{color:var(--navy);background:var(--ivory)}
.password-toggle svg{width:20px;height:20px}
.password-toggle .icon-hide{display:none}
.password-toggle[aria-pressed="true"] .icon-show{display:none}
.password-toggle[aria-pressed="true"] .icon-hide{display:block}

.auth-error{
  display:none;background:#fdecec;border:1px solid #f3b9b9;color:#a33;
  padding:10px 14px;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:16px;
}
.auth-error.show{display:block}

.auth-success{
  display:none;background:#eafaf0;border:1px solid #b9e6c9;color:#1e7a45;
  padding:10px 14px;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:16px;
}
.auth-success.show{display:block}

.auth-card form .btn{width:100%;justify-content:center;margin-top:6px}
.auth-switch{margin-top:22px;font-size:.92rem;color:var(--muted)}
.auth-switch a{color:var(--blue);font-weight:600}

.dash-grid{display:grid;gap:24px;max-width:720px;margin:0 auto}
.dash-card{padding:32px}
.dash-card h2{font-size:1.3rem;margin-bottom:14px}
.pm-display{
  display:flex;align-items:center;gap:12px;padding:14px 18px;border:1px solid var(--line);
  border-radius:var(--radius-sm);background:var(--ivory);font-weight:600;color:var(--navy);
}
#card-element{padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper)}

.admin-table{width:100%;border-collapse:collapse;margin-top:12px}
.admin-table th, .admin-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);font-size:.92rem}
.admin-table th{color:var(--muted);font-weight:600;text-transform:uppercase;font-size:.72rem;letter-spacing:.06em}
