*{box-sizing:border-box}body{margin:0;background:#f4f6fa;color:#1f2937;font:15px/1.5 Arial,sans-serif}header{background:#142b4a;color:#fff;padding:16px max(20px,calc((100% - 1180px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.brand{font-size:20px;font-weight:700}.brand span{font-weight:400;color:#cbd5e1}nav{display:flex;gap:16px;flex-wrap:wrap}nav a{color:#fff;text-decoration:none}main{max-width:1180px;margin:30px auto;padding:0 18px;min-height:70vh}h1{font-size:27px;margin:0 0 22px}h2{margin-top:0}.panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin:18px 0;box-shadow:0 2px 8px #0f172a08}.narrow{max-width:460px;margin:auto}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:#fff;padding:18px;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:9px}.stat strong{font-size:30px}.badge{display:inline-block;padding:4px 9px;border-radius:20px;font-size:12px;font-weight:700;white-space:nowrap}.badge.not_started{background:#e5e7eb;color:#374151}.badge.in_progress{background:#dbeafe;color:#1d4ed8}.badge.needs_reassessment{background:#fef3c7;color:#92400e}.badge.competent{background:#dcfce7;color:#166534}.toolbar{display:flex;gap:10px;margin:20px 0}.button,button{background:#155eef;color:white;border:0;border-radius:7px;padding:10px 15px;text-decoration:none;cursor:pointer;font-weight:600}.button.secondary,button.secondary{background:#64748b}.button.warning,button.warning{background:#b45309}.small{font-size:12px;padding:7px 9px}.assessment textarea{width:100%;min-width:190px;min-height:55px;border:1px solid #cbd5e1;border-radius:6px;padding:8px}.actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px 9px;border-bottom:1px solid #e5e7eb;vertical-align:top}th{background:#f8fafc;font-size:13px}label{display:block;margin:12px 0;font-weight:600}input{display:block;width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:7px;margin-top:5px}.notice{padding:12px 15px;border-radius:8px;background:#dcfce7;color:#166534;margin:15px 0}.notice.error{background:#fee2e2;color:#991b1b}.muted,footer{color:#64748b}footer{text-align:center;padding:24px}@media(max-width:760px){.cards{grid-template-columns:repeat(2,1fr)}.panel{overflow-x:auto}table{min-width:650px}header{align-items:flex-start}nav{gap:10px}}
