:root{
  --bg:#f7f7f7; --fg:#111111; --muted:#6b6b6b; --card:#ffffff; --line:#e9e9e9;
  --accent:#16a34a; --accent-dark:#166534; --accent-ink:#ffffff; --danger:#ef4444;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;letter-spacing:.1px}
.container{max-width:1120px;margin:0 auto;padding:16px}
.row{display:flex;justify-content:space-between;align-items:center}
.site-header{background:#ffffff;border-bottom:1px solid var(--line)}
.site-footer{background:#ffffff;border-top:1px solid var(--line)}
.brand{font-weight:900;color:#111111;letter-spacing:.2px}
.site-header a{color:#2b2b2b;margin-left:14px;text-decoration:none}
.site-header a:hover{color:#000}
.hero{
  padding:80px 0;
  min-height:100vh;
  display:flex;
  align-items:center;
}
.hero-gradient{
  background:
    linear-gradient(180deg,rgba(0,0,0,0.55) 0%,rgba(0,0,0,0.45) 40%,rgba(0,0,0,0.35) 100%),
    url('/assets/img/hero_banner.jpg') center/cover no-repeat;
}
.hero-inner{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:100vh;
  text-align:center;
}
.hero-copy{color:#ffffff;}
.hero-copy h1{font-size:44px;line-height:1.1;margin:0 0 10px}
.lead{color:var(--muted);max-width:740px;margin:0 auto 18px}
.hero-copy .lead{color:#e5e7eb;}
.badges{margin-top:12px}
.hero .badge{
  background:rgba(15,23,42,0.7);
  border-color:rgba(148,163,184,0.7);
  color:#e5e7eb;
}
.badge{display:inline-block;border:1px solid var(--line);color:#0b3d68;background:#e6f2fb;padding:6px 12px;border-radius:999px;margin-right:8px;font-size:12px}
.badge.status-approved{background:#e9fce8;border-color:#b7f0b5;color:#156a12}
.badge.status-pending_review,.badge.status-pending{background:#fffbe6;border-color:#ffe58f;color:#8a6d00}
.badge.status-rejected{background:#ffeaea;border-color:#ffc3c3;color:#7f1d1d}
.badge.status-incomplete{background:#f3f4f6;border-color:#e5e7eb;color:#4b5563}
.badge.verified{background:#e9fce8;border-color:#b7f0b5;color:#156a12}
.btn{background:var(--accent);color:var(--accent-ink);border:0;border-radius:12px;padding:12px 16px;cursor:pointer;text-decoration:none;display:inline-block;transition:transform .04s ease,opacity .2s}
.btn:hover{transform:translateY(-1px);filter:brightness(0.98)}
.btn:active{transform:translateY(0)}
.btn-secondary{background:#111111;color:#fff;border:0}
.card{background:var(--card);padding:18px;border-radius:14px;border:1px solid var(--line);margin-bottom:16px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.features .feat{display:flex;flex-direction:column;align-items:flex-start}
.feat-icon{
  width:100%;
  max-width:260px;
  margin-bottom:12px;
  border-radius:16px;
  overflow:hidden;
  aspect-ratio:4/3;
}
.feat-icon img{
  width:100%;
  height:100%;
  display:block;
  border-radius:inherit;
  object-fit:cover;
}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;list-style-position:inside;margin:8px 0 0;padding:0}
.cta{margin:24px 0}
.cta-card{display:flex;justify-content:space-between;align-items:center}
input,select{width:100%;padding:12px 12px;margin:8px 0 14px;background:#ffffff;border:1px solid var(--line);border-radius:12px;color:var(--fg)}
input:focus,select:focus{outline:2px solid var(--accent);outline-offset:0; box-shadow:0 0 0 3px rgba(22,163,74,.25)}
.alert{background:#fff7f7;color:#7f1d1d;border:1px solid #fecaca;padding:12px;border-radius:12px;margin:10px 0}
.success{background:#fffbe6;color:#4d3b00;border:1px solid #ffe58f;padding:12px;border-radius:12px;margin:10px 0}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border-bottom:1px solid var(--line);padding:12px}
.table thead th{background:#f4f7f9;color:#4b5563;font-weight:600;position:sticky;top:0;z-index:1}
.table-wrap{overflow:auto;border-radius:12px;border:1px solid var(--line)}
.section-title{display:flex;align-items:center;justify-content:space-between;margin:4px 0 12px}
.metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.metric-card{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.metric-title{color:#6b7280;font-size:12px;text-transform:uppercase;letter-spacing:.6px}
.metric-value{font-size:28px;font-weight:800;color:#111827}
.toolbar{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.tabs{background:#ffffff;border-bottom:1px solid var(--line);padding:8px 16px}
.tabs .tab{margin-right:10px;color:#2b2b2b;text-decoration:none}
.tabs .tab:hover{color:#000}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center}
.modal[hidden]{display:none !important}
.modal-content{background:#ffffff;padding:20px;border-radius:14px;border:1px solid var(--line);max-width:600px;width:92%}
