:root{
  --ink:#111111;
  --gold:#F7B733;
  --gold-deep:#D9971A;
  --paper:#FBFAF7;
  --paper-dim:#F1EFE9;
  --line:rgba(17,17,17,0.10);
  --gray:#6B6A66;
  --red:#C0392B;
  --green:#2E7D32;
  --radius:12px;
}
*{box-sizing:border-box;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Manrope',-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;}
h1,h2,h3{font-family:'Unbounded',sans-serif;letter-spacing:-0.01em;margin:0 0 8px;}

.topbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 28px;background:var(--ink);color:var(--paper);
}
.topbar .brand{font-family:'Unbounded',sans-serif;font-weight:700;color:var(--gold);}
.topbar nav a{margin-left:18px;color:var(--paper);opacity:.85;font-size:14px;}
.topbar nav a:hover{opacity:1;color:var(--gold);}

.wrap{max-width:1080px;margin:0 auto;padding:32px 24px;}
.card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:24px;margin-bottom:20px;
}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;}

label{display:block;font-size:13px;font-weight:600;margin:14px 0 6px;color:var(--gray);}
input[type=text],input[type=email],input[type=password],input[type=number],
input[type=date],select,textarea{
  width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;
  font-size:14px;font-family:inherit;background:var(--paper-dim);
}
textarea{min-height:90px;resize:vertical;}
.checkbox-row{display:flex;flex-wrap:wrap;gap:10px;}
.checkbox-row label{display:flex;align-items:center;gap:6px;font-weight:400;margin:0;color:var(--ink);}

.btn{
  display:inline-block;padding:11px 20px;border-radius:8px;border:none;
  background:var(--ink);color:var(--gold);font-weight:700;cursor:pointer;
  font-size:14px;text-decoration:none;
}
.btn:hover{background:#000;}
.btn-gold{background:var(--gold);color:var(--ink);}
.btn-gold:hover{background:var(--gold-deep);}
.btn-outline{background:transparent;border:1px solid var(--ink);color:var(--ink);}
.btn-sm{padding:6px 12px;font-size:12px;}

table{width:100%;border-collapse:collapse;font-size:14px;}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);}
th{color:var(--gray);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em;}
tr:hover td{background:var(--paper-dim);}

.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;}
.badge-open{background:#EAF6EC;color:var(--green);}
.badge-closed{background:#F3E4E2;color:var(--red);}
.badge-stage{background:var(--paper-dim);color:var(--ink);border:1px solid var(--line);}

.score-pill{
  display:inline-flex;align-items:center;justify-content:center;
  width:52px;height:52px;border-radius:50%;font-weight:800;font-family:'Unbounded',sans-serif;
  background:var(--gold);color:var(--ink);font-size:15px;
}
.score-bar{height:8px;background:var(--paper-dim);border-radius:4px;overflow:hidden;margin-top:4px;}
.score-bar > div{height:100%;background:var(--gold);}

.flash{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px;}
.flash-ok{background:#EAF6EC;color:var(--green);border:1px solid #BFE3C4;}
.flash-error{background:#FBEAE8;color:var(--red);border:1px solid #F0C4BE;}

.helptext{font-size:12px;color:var(--gray);margin-top:4px;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media (max-width:720px){.two-col{grid-template-columns:1fr;}}
