*{box-sizing:border-box}body{margin:0;font-family:system-ui,sans-serif;background:#eff3f8;color:#20324b}header{padding:20px 5%;background:#12223e;display:flex;align-items:center;justify-content:space-between;gap:20px}header>a{font-size:27px;font-weight:900;color:#b7f0ce;text-decoration:none}header>a span{font-size:16px;color:white;margin-left:12px}nav{display:flex;gap:12px;align-items:center}nav a{color:#d4e6f8}button,.file-button{font:inherit;font-size:14px;cursor:pointer;padding:11px 15px;border:1px solid #b2c1d3;background:white;color:#20324b;border-radius:8px;min-height:42px}button:hover{background:#e6eef7}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #368ca0;outline-offset:2px}.file-button{font-size:13px}input[type=file]{display:none}main{width:min(1200px,92%);margin:35px auto}.intro{display:flex;align-items:center;justify-content:space-between;gap:20px}h1{font-size:32px;letter-spacing:-1px;margin:9px 0}h2{font-size:20px;margin:0 0 15px}p{font-size:14px;line-height:1.6;color:#5b6b7e}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#367777}.notice{padding:15px 19px;border:1px solid #c7d5e5;border-radius:10px;background:#e2ebf5;line-height:1.55;font-size:13px;margin:22px 0}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:23px 0}.primary{background:#1c5962;border-color:#1c5962;color:white}.primary:hover{background:#26707c}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:22px}.stat{background:white;border:1px solid #d1dce7;padding:19px;border-radius:12px}.stat b{font-size:27px;display:block}.stat span{font-size:12px;color:#607287}.card{background:white;border:1px solid #d2dce6;border-radius:13px;padding:23px;margin:19px 0}.section-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th{padding:14px 10px;color:#66768a;font-size:11px;letter-spacing:.6px}td{border-top:1px solid #e4eaf2;padding:14px 10px;vertical-align:middle}.status{display:inline-block;padding:5px 8px;border-radius:6px;background:#edf3f8;font-size:11px;white-space:nowrap}.status.review{background:#fff0d0;color:#835d1c}.status.support{background:#f8dfe8;color:#873d57}.status.secure{background:#dbf0e5;color:#27614b}select,input,textarea{font:inherit;border:1px solid #aebed1;padding:11px;border-radius:7px;background:white;color:#20324b;max-width:100%}td input{width:110px;font-size:12px;padding:7px}.empty{padding:22px 0;text-align:center}.assignment{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 0;border-top:1px solid #e2e9f2}.assignment b{font-size:14px}.assignment small{display:block;font-size:12px;color:#66778c;margin-top:6px}dialog{width:min(860px,94%);max-height:90dvh;border:1px solid #b4c5d7;border-radius:16px;padding:25px;color:#20324b}dialog::backdrop{background:#14263a88}dialog label{display:block;font-size:13px;margin:14px 0 7px}dialog input:not([type=checkbox]),dialog select,dialog textarea{display:block;width:100%;margin-top:5px}dialog textarea{min-height:130px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.close{margin-top:22px}.skill-table td{padding:10px 6px}.skill-table th{padding:10px 6px}.skill-table td small{display:block;color:#78889b}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.error-list{padding-left:19px;font-size:13px;line-height:1.7}.toggle{display:flex!important;gap:10px;align-items:center}.toggle input{width:19px;height:19px}.note{font-size:12px;color:#708199}#status{font-size:13px;color:#1d636b}.delete{color:#8c455a}.checkboxes{max-height:150px;overflow:auto;padding:8px;background:#f1f5fa}.checkboxes label{margin:5px}.small{font-size:12px}
@media(max-width:700px){header{padding:15px 4%;align-items:start}header>a span{display:none}nav{flex-wrap:wrap;justify-content:end;gap:7px}nav a,nav button,.file-button{font-size:11px}main{width:94%;margin:23px auto}.intro{display:block}h1{font-size:27px}.summary{grid-template-columns:1fr 1fr}.card{padding:15px}.toolbar button{font-size:12px;padding:9px}.form-grid,.detail-grid{grid-template-columns:1fr}.section-top{align-items:start}.section-top button{font-size:11px}.assignment{align-items:start}dialog{padding:18px}}
