
/* Basic styles for Mementorship Portal */
:root{ --primary:#4f46e5; --text:#1f2937; --muted:#6b7280; --bg:#f8fafc; --card:#ffffff; }
*{ box-sizing:border-box; }
body{ margin:0; font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu; color:var(--text); background:var(--bg); }
header{ background:#fff; border-bottom:1px solid #e5e7eb; position:sticky; top:0; z-index:10; }
.nav{ max-width:1100px; margin:0 auto; padding:12px 16px; display:flex; align-items:center; justify-content:space-between; }
.nav a{ color:var(--text); text-decoration:none; margin:0 8px; padding:8px 10px; border-radius:8px; }
.nav a.active, .btn{ background:var(--primary); color:#fff; }
.container{ max-width:1100px; margin:24px auto; padding:0 16px; }
.card{ background:var(--card); border:1px solid #e5e7eb; border-radius:12px; padding:16px; box-shadow:0 1px 2px rgba(0,0,0,0.03); }
.grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:16px; }
.input, select, textarea{ width:100%; padding:10px 12px; border:1px solid #d1d5db; border-radius:10px; outline:none; }
.input:focus, select:focus, textarea:focus{ border-color:var(--primary); box-shadow:0 0 0 3px rgba(79,70,229,0.15); }
label{ font-weight:600; font-size:0.95rem; }
.row{ display:flex; gap:12px; }
.row > *{ flex:1; }
.table{ width:100%; border-collapse:collapse; }
.table th,.table td{ padding:10px; border-bottom:1px solid #f1f5f9; text-align:left; }
.badge{ display:inline-block; padding:3px 8px; border-radius:999px; font-size:12px; }
.badge.success{ background:#dcfce7; color:#166534; }
.badge.pending{ background:#fef9c3; color:#854d0e; }
.badge.cancelled{ background:#fee2e2; color:#991b1b; }
.footer{ color:var(--muted); text-align:center; padding:32px 16px; }
