:root { --bg:#fff; --card:#fafafa; --border:#e6e6e6; --text:#222; --muted:#666; --brand:#6A7850; }
*{ box-sizing:border-box; }
body{ margin:0; font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; background:var(--bg); color:var(--text); }
a{ color:inherit; text-decoration:none; }

/* Layout */
.layout{ display:flex; min-height:100vh; }
.sidebar{
  width:250px; background:#f6f7f5; border-right:1px solid var(--border);
  position:sticky; top:0; height:100vh; padding:16px;
}
.brand{ font-weight:900; font-size:18px; margin-bottom:16px; }
.nav-section{ margin-bottom:12px; }
.nav-parent{
  width:100%; text-align:left; background:transparent; border:0; font-weight:800;
  padding:8px 10px; border-radius:10px; cursor:pointer;
}
.nav-children{ margin:6px 0 0 8px; display:block; }
.nav-link{
  display:block; padding:8px 10px; border-radius:10px; color:#333; border:1px solid transparent;
}
.nav-link:hover{ background:#fff; border-color:#e3e3e3; }
.nav-link.active{ background:#e9eee3; border-color:#dbe3d0; }

.main{ flex:1; }
.container{ max-width:1000px; margin:0 auto; padding:16px 24px; }
header{ display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }

.card{ background:var(--card); border:1px solid var(--border); border-radius:12px; padding:12px; margin:8px 0; }
.list{ margin-top:8px; }
h1,h2,h3{ margin:8px 0; }

label{ font-weight:700; font-size:12px; opacity:.85; display:block; margin-bottom:6px; }
input,select,textarea{ width:100%; padding:10px 12px; border:1px solid #ddd; border-radius:10px; background:#fff; font-size:16px; }
.row{ margin:6px 0; }

.btn{ display:inline-block; padding:12px 16px; border-radius:12px; border:1px solid transparent; background:var(--brand); color:#fff; font-weight:800; cursor:pointer; text-align:center; }
.btn.secondary{ background:#fff; color:#333; border-color:#ddd; }
.btn.small{ padding:8px 12px; border-radius:10px; font-weight:700; }

.badge{ display:inline-block; padding:4px 8px; border-radius:999px; font-size:12px; font-weight:800; }
.badge.submitted{ background:#FFF4E5; }
.badge.approved{ background:#E6F4EA; }
.badge.rejected{ background:#FDE7E9; }
.badge.needs_info{ background:#E7F0FD; }
