:root{font-family:system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#1b2a3c;background:#f1f5f9;font-size:15px}*{box-sizing:border-box}body{margin:0}a{color:#175bb0}a:hover{text-decoration:underline}.container{max-width:1260px;margin:auto;padding:30px 22px 70px}header{margin-bottom:24px}h1{font-size:clamp(1.7rem,3vw,2.6rem);margin:6px 0}h2{font-size:1.25rem;margin:0 0 16px}h3{margin:26px 0 10px}.eyebrow{font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#52708d;font-size:.76rem}.panel{padding:26px;margin:22px 0;background:white;border:1px solid #dbe3eb;border-radius:14px;box-shadow:0 2px 9px #15233b0b}.narrow{max-width:550px}.topnav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.topnav form{margin-left:auto}label{display:block;font-weight:600}input:not([type=checkbox]),select,textarea{display:block;margin-top:8px;width:100%;padding:11px 12px;border:1px solid #aebbcc;border-radius:8px;background:white;color:#172536;font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid #82a9e7;border-color:#2563af}textarea{resize:vertical;line-height:1.45}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}fieldset{border:1px solid #dbe3eb;border-radius:10px;margin:20px 0;padding:17px}legend{font-weight:700}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;line-height:1.45}.check input{accent-color:#175bb0;width:17px;height:17px;margin-top:3px;flex:none}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}.actions input{flex:1;min-width:240px;margin:0}button,.button{font:inherit;font-weight:650;padding:10px 17px;display:inline-block;border-radius:8px;border:1px solid #1959a9;background:#1959a9;color:#fff;cursor:pointer;text-decoration:none;white-space:nowrap}button:hover,.button:hover{background:#134787;color:white;text-decoration:none}.secondary{background:white;color:#1959a9}.secondary:hover{background:#f3f7fd;color:#134787}.danger{background:#aa263b;border-color:#aa263b}.danger:hover{background:#85192c}.small{padding:7px 13px}.muted{color:#54657b;font-size:.92rem}.success{padding:13px;background:#eaf8ef;color:#12653b;border-radius:8px}.error{color:#a32034;font-weight:600}.tablewrap{overflow-x:auto;border:1px solid #dce4ed;border-radius:9px}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{border-bottom:1px solid #e6edf3;padding:13px 12px;text-align:left;vertical-align:top}thead{background:#eaf0f8}tbody tr:nth-child(even){background:#fafcff}.matrix th:first-child{min-width:330px;max-width:410px}.matrix td{min-width:165px}.chip{display:inline-block;background:#edf3ff;border:1px solid #bfcfee;border-radius:7px;color:#174785;padding:4px 8px;margin:2px 2px 3px 0;text-decoration:none;white-space:nowrap}.missing{color:#9ba9b8}#mail{font-size:.95rem;line-height:1.5}[aria-disabled=true]{opacity:.5}@media(max-width:700px){.fields,.checks{grid-template-columns:1fr}.panel{padding:18px}.container{padding:20px 12px 50px}.matrix th:first-child{min-width:260px}}

/* Kompakte Kategorienmatrix: sämtliche Referendar*innen nebeneinander */
.matrix{width:100%;table-layout:fixed;font-size:clamp(8px,.79vw,11px)}
.matrix th,.matrix td{min-width:0!important;max-width:none!important;padding:6px 3px;overflow-wrap:anywhere;word-break:normal;hyphens:auto;text-align:center}
.matrix th:first-child{width:23%;text-align:left;padding-left:8px;overflow-wrap:normal;hyphens:auto}
.matrix thead th:not(:first-child){vertical-align:bottom;font-size:clamp(8px,.8vw,11px);line-height:1.25}
.matrix .chip{display:inline-flex;flex-direction:column;align-items:center;gap:2px;white-space:normal;padding:3px 2px;margin:1px 0;width:100%;font-size:inherit;line-height:1.2}
.matrix .chip span{font-variant-numeric:tabular-nums}
@media(max-width:700px){.matrix{font-size:8px}.matrix th:first-child{width:26%;padding-left:3px}.matrix th,.matrix td{padding:4px 1px}.matrix thead th:not(:first-child){font-size:8px}.matrix .chip{padding:2px 0}}
@media print{.container{max-width:none;padding:0}.panel{box-shadow:none;border:none;padding:0}.topnav,.actions{display:none}.matrix{font-size:9px}.matrix thead th:not(:first-child){font-size:9px}@page{size:landscape;margin:8mm}}

.matrix-add{display:inline-block;font-weight:700;font-size:12px;text-decoration:none;padding:0 3px;color:#2462ac}.matrix-add:hover{text-decoration:underline}
@media print{.matrix-add{display:none}}
