/* Minimal dashboard styling — reuses the core tokens from docs/brand-guide.md
   for visual consistency with the public site, kept lean since this is an
   internal tool, not a marketing page. */
:root{
  --ink:#132A33;
  --ink-soft:#2B4048;
  --paper:#F5F7F5;
  --paper-dim:#ECEFEC;
  --pounamu:#1E7A5F;
  --pounamu-dark:#145843;
  --line:#DDE3E1;
  --error:#B3441E;
  --font-body:'Public Sans', system-ui, sans-serif;
  --radius-s:8px;
  --radius-m:14px;
}
*{box-sizing:border-box}
body{margin:0; font-family:var(--font-body); color:var(--ink); background:var(--paper-dim); line-height:1.5;}
a{color:var(--pounamu-dark)}
.wrap{max-width:960px; margin:0 auto; padding:24px;}
.card{background:var(--paper); border:1px solid var(--line); border-radius:var(--radius-m); padding:28px; margin-bottom:20px;}
.auth-card{max-width:420px; margin:64px auto;}
h1{font-size:1.5rem; margin:0 0 20px;}
h2{font-size:1.15rem; margin:0 0 14px;}
label{display:block; font-weight:600; font-size:0.9rem; margin:14px 0 6px;}
input[type="text"], input[type="email"], input[type="password"], input[type="tel"]{
  width:100%; padding:10px 12px; border:1.5px solid var(--line); border-radius:var(--radius-s);
  font-family:var(--font-body); font-size:0.95rem;
}
input:focus{outline:2px solid var(--pounamu); outline-offset:1px;}
.checkbox-line{display:flex; align-items:center; gap:8px; font-weight:500; margin:14px 0;}
.checkbox-line input{width:auto;}
.btn{display:inline-block; background:var(--pounamu); color:#fff; border:none; padding:10px 20px;
  border-radius:999px; font-weight:700; font-size:0.95rem; cursor:pointer; text-decoration:none; margin-top:14px;}
.btn:hover{background:var(--pounamu-dark);}
.btn-ghost{background:transparent; color:var(--ink); border:1.5px solid var(--line);}
.error-text{color:var(--error); font-size:0.9rem; margin:10px 0;}
.success-text{color:var(--pounamu-dark); font-size:0.9rem; margin:10px 0;}
.site-nav{display:flex; justify-content:space-between; align-items:center; background:var(--ink); padding:14px 24px;}
.site-nav a{color:#DCE5E2; text-decoration:none; margin-right:18px; font-weight:600; font-size:0.9rem;}
.site-nav a:hover{color:#fff;}
.site-nav .brand{color:#fff; font-weight:700;}
table{width:100%; border-collapse:collapse; font-size:0.9rem;}
th, td{text-align:left; padding:10px 12px; border-bottom:1px solid var(--line);}
th{color:var(--ink-soft); font-size:0.78rem; text-transform:uppercase; letter-spacing:0.04em;}
.badge{display:inline-block; padding:3px 10px; border-radius:999px; font-size:0.78rem; font-weight:700;}
.badge-unassigned{background:#ECEFEC; color:var(--ink-soft);}
.badge-assigned{background:#FCEBD9; color:#8A5A1E;}
.badge-claimed, .badge-contacted{background:#E1F0EA; color:var(--pounamu-dark);}
.badge-converted{background:var(--pounamu); color:#fff;}
.badge-lost, .badge-expired_returned, .badge-archived{background:#F1E3DD; color:var(--error);}
.badge-duplicate, .badge-demo{background:#F1E3DD; color:var(--error);}
.badge-premium{background:var(--pounamu); color:#fff;}
.badge-hot{background:#FCEBD9; color:#8A5A1E;}
.badge-standard{background:#E1F0EA; color:var(--pounamu-dark);}
.badge-cold{background:#ECEFEC; color:var(--ink-soft);}
.badge-unmatched{background:#F1E3DD; color:var(--error);}
dl.detail{display:grid; grid-template-columns:160px 1fr; gap:8px 16px; font-size:0.92rem;}
dl.detail dt{color:var(--ink-soft); font-weight:600;}
dl.detail dd{margin:0;}
textarea{width:100%; padding:10px 12px; border:1.5px solid var(--line); border-radius:var(--radius-s);
  font-family:var(--font-body); font-size:0.95rem; resize:vertical; min-height:70px;}
.note{border-bottom:1px solid var(--line); padding:12px 0;}
.note:last-child{border-bottom:none;}
.note-meta{font-size:0.78rem; color:var(--ink-soft); margin-bottom:4px;}
.note-text{margin:0; white-space:pre-wrap;}
