.sheet-ribbon{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--portal-line);border-radius:9px 9px 0 0;background:var(--portal-surface);padding:18px 20px;margin-bottom:20px;border-top:3px solid var(--portal-accent)}
.sheet-ribbon>div{display:flex;align-items:center;gap:13px}.sheet-ribbon strong{font-size:15px;font-weight:700;display:block;color:var(--portal-text)}.sheet-ribbon span:not(.sheet-file-icon){font-size:11px;color:var(--portal-muted);line-height:1.7}.sheet-ribbon>div>div>span{display:block;margin-top:5px}.sheet-file-icon{color:var(--portal-accent);font-size:31px;line-height:1}.sheet-help{font-size:11px!important;margin-bottom:14px;color:var(--portal-muted)}
.personnel-sheet-scroll{width:100%;max-height:65vh;overflow:auto;border:1px solid var(--portal-line);border-radius:6px;background:var(--portal-surface);scrollbar-width:thin;scrollbar-color:var(--portal-line) var(--portal-bg)}
:root[data-theme] .personnel-sheet{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:11px;line-height:1.5;table-layout:fixed}
:root[data-theme] .personnel-sheet :is(th,td){padding:8px 10px;border-right:1px solid var(--portal-line);border-bottom:1px solid var(--portal-line);white-space:nowrap;font-size:11px;line-height:1.5;vertical-align:middle}
:root[data-theme] .personnel-sheet thead th{text-transform:none;letter-spacing:0;position:sticky;z-index:3;color:var(--portal-text);background:var(--portal-raised);font-weight:600}
:root[data-theme] .personnel-sheet .sheet-letters th{top:0;text-align:center;height:27px;padding:4px 8px;font-size:10px;color:var(--portal-muted);background:var(--portal-raised);font-weight:500}
:root[data-theme] .personnel-sheet .sheet-columns th{top:27px;height:38px;font-size:10px;text-transform:uppercase;letter-spacing:.3px;background:color-mix(in srgb,var(--portal-accent) 12%,var(--portal-surface))}
:root[data-theme] .personnel-sheet .sheet-corner{left:0;z-index:7;min-width:43px;width:43px;text-align:center}
:root[data-theme] .personnel-sheet .sheet-row-number{position:sticky;left:0;z-index:2;min-width:43px;width:43px;text-align:center;background:var(--portal-raised);color:var(--portal-muted);font-size:10px;font-weight:400}
:root[data-theme] .personnel-sheet .sheet-name-heading{position:sticky;left:43px;z-index:6;min-width:235px;max-width:235px}
:root[data-theme] .personnel-sheet .sheet-name{position:sticky;left:43px;z-index:2;min-width:235px;max-width:235px;background:var(--portal-surface);box-shadow:2px 0 0 var(--portal-line)}
.personnel-name{font-size:12px;font-weight:650;color:var(--portal-text);padding:3px 0;text-align:left;max-width:215px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.personnel-name:hover{color:var(--portal-accent);text-decoration:underline;text-underline-offset:3px}
:root[data-theme] .personnel-sheet tr:hover td{background:color-mix(in srgb,var(--portal-accent) 6%,var(--portal-surface))}
.personnel-sheet .sheet-hours{font-variant-numeric:tabular-nums;text-align:right;min-width:73px;background:color-mix(in srgb,var(--portal-blue) 5%,var(--portal-surface))}
.sheet-callsign,.sheet-discord{font-variant-numeric:tabular-nums}.sheet-rank{display:block;min-width:145px;padding:5px 8px;margin:-3px -5px;font-size:11px;border-radius:3px}.sheet-rank.band-basic{background:color-mix(in srgb,var(--portal-accent) 10%,transparent);color:var(--portal-accent)}.sheet-rank.band-medical{background:color-mix(in srgb,var(--portal-blue) 10%,transparent);color:var(--portal-blue)}.sheet-rank.band-lead{background:color-mix(in srgb,var(--portal-gold) 12%,transparent);color:var(--portal-gold)}
:root[data-theme] .personnel-sheet :is(.sheet-check,.sheet-check-heading){min-width:49px;width:49px;text-align:center;padding-left:6px;padding-right:6px}
:root[data-theme] .personnel-sheet .sheet-check input{display:block;width:15px;height:15px;min-height:0;margin:0 auto;padding:0;border-radius:2px;accent-color:var(--portal-accent);opacity:1;cursor:default;color:var(--portal-accent)}
.sheet-notes{min-width:290px;max-width:350px;overflow:hidden;text-overflow:ellipsis}.personnel-sheet .badge{font-size:9px}.sheet-bottom-bar{display:flex;align-items:center;gap:22px;padding:13px 16px;background:var(--portal-raised);border:1px solid var(--portal-line);border-top:0;border-radius:0 0 6px 6px;color:var(--portal-muted);font-size:10px;line-height:1.7}.sheet-bottom-bar strong{color:var(--portal-accent);font-size:10px;letter-spacing:.6px;border-bottom:2px solid var(--portal-accent);padding-bottom:4px}.sheet-bottom-bar>span:last-child{margin-left:auto}
.personnel-editor-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px}.personnel-editor-top>span{color:var(--portal-muted);font-size:12px}.personnel-fields{border:0;padding:0;margin:0;min-width:0}.personnel-form-section{margin-bottom:23px;overflow:hidden}.personnel-form-section>header{display:flex;align-items:flex-start;gap:18px;padding:23px 25px;border-bottom:1px solid var(--portal-line);background:color-mix(in srgb,var(--portal-accent) 3%,var(--portal-surface))}.personnel-form-section>header>span{flex-shrink:0;background:var(--portal-soft);color:var(--portal-accent);border:1px solid color-mix(in srgb,var(--portal-accent) 15%,transparent);font-size:10px;letter-spacing:.3px;padding:8px 9px;min-width:41px;text-align:center;border-radius:5px}.personnel-form-section h2{font-size:17px;line-height:1.5;margin:0 0 6px}.personnel-form-section header p{font-size:12px!important;margin:0;line-height:1.8}.personnel-form-grid{padding:25px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.personnel-form-grid>.full{grid-column:1/-1}.personnel-form-grid label{font-size:12px}.personnel-form-grid .field-note{margin:0;font-size:11px!important;line-height:1.8;color:var(--portal-muted)}.personnel-form-grid .field-note.full{margin-top:-5px}.personnel-rank-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.personnel-rank-actions small{font-size:11px;color:var(--portal-muted);line-height:1.8}.personnel-approval{display:flex;gap:12px;padding:18px;background:var(--portal-soft);border:1px solid color-mix(in srgb,var(--portal-accent) 15%,transparent);border-radius:6px}
.qualification-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));padding:24px;gap:0}.qualification-cell{display:flex;flex-direction:column;align-items:center;border:1px solid var(--portal-line);border-right:0;padding:0 0 15px;gap:12px;background:var(--portal-surface)}.qualification-cell:nth-child(9n){border-right:1px solid var(--portal-line)}.qualification-cell:nth-child(n+10){border-top:0}.qualification-cell>span{display:block;width:100%;text-align:center;font-size:9px;padding:6px;background:var(--portal-raised);color:var(--portal-muted);font-weight:400;border-bottom:1px solid var(--portal-line)}.qualification-cell>strong{font-size:12px;color:var(--portal-text);font-weight:650}.qualification-cell:has(input:checked){background:var(--portal-soft)}:root[data-theme] .qualification-cell input{appearance:auto;display:block;width:20px;height:20px;min-height:0;accent-color:var(--portal-accent);margin:0;padding:0;cursor:pointer}.personnel-save-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:19px 22px;border:1px solid var(--portal-line);border-radius:9px;background:var(--portal-surface);position:sticky;bottom:16px;z-index:8;box-shadow:var(--portal-shadow);margin-top:25px}.personnel-save-bar>span{font-size:11px;color:var(--portal-muted);line-height:1.8}.personnel-danger{padding:24px 25px;margin-top:35px;border-color:color-mix(in srgb,#d5786b 35%,var(--portal-line))!important}.personnel-danger h2{font-size:16px;margin-bottom:12px}.personnel-danger>p{font-size:12px!important;max-width:800px}.personnel-danger .checkbox-label{font-size:12px;line-height:1.8;margin:20px 0}.personnel-danger .checkbox-label input{min-height:0;width:17px;height:17px;accent-color:#c67d6c;margin:0;flex-shrink:0}.personnel-danger>.btn{font-size:12px}.personnel-danger .form-error{margin-bottom:0}
@media(max-width:1000px){.personnel-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qualification-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.qualification-cell:nth-child(9n){border-right:0}.qualification-cell:nth-child(6n){border-right:1px solid var(--portal-line)}.qualification-cell:nth-child(n+7){border-top:0}.sheet-bottom-bar>span:last-child{display:none}.personnel-save-bar{gap:15px}.personnel-save-bar>span{max-width:250px}}
@media(max-width:700px){.sheet-ribbon{padding:17px;display:block}.sheet-ribbon>span{display:block;margin-top:12px}.sheet-ribbon strong{font-size:14px}.sheet-ribbon>div{gap:11px}.sheet-ribbon>div>div>span{font-size:10px}.sheet-help{font-size:10px!important}.personnel-sheet-scroll{max-height:65vh}:root[data-theme] .personnel-sheet .sheet-name{min-width:170px;max-width:170px}:root[data-theme] .personnel-sheet .sheet-name-heading{min-width:170px;max-width:170px}.personnel-name{font-size:11px;max-width:150px}.sheet-bottom-bar{gap:17px;font-size:9px;padding:12px}.personnel-editor-top{display:block;margin-bottom:22px}.personnel-editor-top>span{display:block;font-size:11px;margin-top:11px}.personnel-form-section>header{padding:19px 18px;gap:13px}.personnel-form-section h2{font-size:16px}.personnel-form-section header p{font-size:11px!important}.personnel-form-grid{grid-template-columns:1fr;padding:20px 18px;gap:20px}.personnel-form-grid .field-note{font-size:11px!important}.qualification-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 18px}.qualification-cell:nth-child(6n){border-right:0}.qualification-cell:nth-child(3n){border-right:1px solid var(--portal-line)}.qualification-cell:nth-child(n+4){border-top:0}.qualification-cell strong{font-size:12px}.qualification-cell{gap:11px;padding-bottom:15px}.qualification-cell input{width:21px;height:21px}.personnel-save-bar{padding:16px;gap:13px;flex-wrap:wrap;bottom:12px;margin-bottom:65px}.personnel-save-bar>span{display:none}.personnel-save-bar>.btn{flex:1;font-size:11px;padding:10px;white-space:nowrap}.personnel-approval{flex-wrap:wrap;padding:13px}.personnel-rank-actions .btn{font-size:11px}.personnel-danger{padding:20px 18px}.personnel-danger .checkbox-label{font-size:11px}.personnel-form-section>header>span{font-size:9px;min-width:35px;padding:7px}.sheet-bottom-bar strong{font-size:9px}}

body:has(#personnel-form) .theme-toggle{bottom:100px}body:has(#personnel-form) #toast{bottom:155px}:root[data-theme] .personnel-sheet .sheet-check input{appearance:none;position:relative;display:grid;place-items:center;border:1px solid var(--portal-muted);background:transparent}:root[data-theme] .personnel-sheet .sheet-check input:checked{background:var(--portal-accent);border-color:var(--portal-accent)}:root[data-theme] .personnel-sheet .sheet-check input:checked::after{content:"\2713";font-size:12px;font-weight:800;line-height:1;color:var(--portal-bg)}
.member-list-summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:24px;font-size:12px;color:var(--portal-muted)}.member-list-summary strong{color:var(--portal-text);font-size:16px}.member-list-summary p{flex-basis:100%;font-size:12px!important;margin:0;line-height:1.8}.member-directory{overflow:hidden}.member-list tr[data-action]{cursor:pointer}.member-list .personnel-name{font-size:13px;max-width:none;white-space:normal;overflow:visible}.member-list-count{font-size:11px!important;color:var(--portal-muted);margin-top:14px}.member-list td{vertical-align:middle}.member-list td:first-child{width:35%}.member-list td:nth-child(2){width:22%}
@media(max-width:700px){.member-list thead{display:none}.member-list,.member-list tbody{display:block;width:100%}.member-list tbody tr{display:grid;grid-template-columns:1fr auto;gap:9px 15px;padding:18px;border-bottom:1px solid var(--portal-line)}.member-list tbody tr:last-child{border:0}.member-list td{display:block;border:0!important;padding:0!important;width:auto!important;font-size:12px}.member-list td:first-child{grid-column:1;grid-row:1}.member-list td:nth-child(2){grid-column:1;grid-row:2}.member-list td:nth-child(3){grid-column:1;grid-row:3;color:var(--portal-muted)}.member-list td:nth-child(3)::before{content:"Roepnummer: "}.member-list td:nth-child(4){grid-column:2;grid-row:1;text-align:right}.member-list td:last-child{grid-column:2;grid-row:2/4;align-self:end;text-align:right}.member-list td small{font-size:10px;margin-top:5px}.member-list .personnel-name{font-size:13px}}
.personal-workbook{border:1px solid var(--portal-line);border-top:3px solid var(--portal-accent);border-radius:6px 6px 0 0;background:var(--portal-surface);margin-bottom:22px;overflow:hidden}
.workbook-title{display:flex;align-items:center;gap:13px;padding:18px 22px;border-bottom:1px solid var(--portal-line)}.workbook-icon{font-size:28px;color:var(--portal-accent)}.workbook-title strong{display:block;font-size:14px;font-weight:700;color:var(--portal-text)}.workbook-title>div>span{display:block;font-size:11px;color:var(--portal-muted);margin-top:5px}.workbook-state{margin-left:auto;font-size:10px;padding:5px 9px;border:1px solid var(--portal-line);background:var(--portal-raised);color:var(--portal-muted);border-radius:3px}
.workbook-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.workbook-summary>div{padding:17px 22px;border-right:1px solid var(--portal-line)}.workbook-summary>div:last-child{border-right:0}.workbook-summary dt{font-size:10px;letter-spacing:.3px;margin-bottom:9px}.workbook-summary dd{font-size:17px;line-height:1.6;font-weight:650;margin:0;color:var(--portal-text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.workbook-summary dd small{font-size:11px;font-weight:400;color:var(--portal-muted)}
.workbook-tabs{display:flex;gap:0;background:var(--portal-raised);border-top:1px solid var(--portal-line);overflow-x:auto}.workbook-tabs button{font-size:11px;padding:13px 18px;border-right:1px solid var(--portal-line);border-bottom:2px solid transparent;white-space:nowrap;color:var(--portal-muted)}.workbook-tabs button:hover,.workbook-tabs button:focus-visible{color:var(--portal-accent);background:var(--portal-soft);border-bottom-color:var(--portal-accent)}
#personnel-form .personnel-fields{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:stretch}#personnel-form .personnel-form-section{margin:0;border-radius:5px;scroll-margin-top:24px}#personnel-form :is(#person-qualifications,#person-notes){grid-column:1/-1}#personnel-form .personnel-form-section>header{padding:17px 19px;gap:13px;background:var(--portal-raised)}#personnel-form .personnel-form-section>header>span{border:0;border-right:1px solid var(--portal-line);border-radius:0;background:transparent;padding:3px 13px 3px 0;min-width:37px;color:var(--portal-accent);font-size:10px}#personnel-form .personnel-form-section h2{font-family:EMS Inter,Arial,sans-serif;font-size:14px;font-weight:700;letter-spacing:0;margin-bottom:4px}#personnel-form .personnel-form-section header p{font-size:11px!important;line-height:1.7}#personnel-form .personnel-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0}#personnel-form .personnel-form-grid>label{padding:17px 19px;border-right:1px solid var(--portal-line);border-bottom:1px solid var(--portal-line);font-size:11px;min-width:0}#personnel-form .personnel-form-grid>label:nth-child(2n){border-right:0}#personnel-form .personnel-form-grid>.full{padding:16px 19px;margin:0!important}#personnel-form :is(input:not([type=checkbox]),select,textarea){border-radius:3px;min-height:39px;font-size:12px;padding:9px 10px}#personnel-form .personnel-form-grid .field-note:not(.full){padding:17px 19px;font-size:10px!important}#personnel-form .personnel-rank-actions{border-bottom:1px solid var(--portal-line);background:color-mix(in srgb,var(--portal-accent) 3%,var(--portal-surface));gap:9px}#personnel-form .personnel-rank-actions .btn{font-size:11px;min-height:35px;padding:8px 11px;border-radius:3px}#personnel-form .personnel-rank-actions small{flex-basis:100%;font-size:10px}#personnel-form .personnel-approval{border-radius:0;border-left:0;border-right:0}#personnel-form .qualification-grid{padding:20px;gap:0}#personnel-form .qualification-cell{padding-bottom:17px;gap:13px}#personnel-form .qualification-cell>strong{font-size:12px}#personnel-form .qualification-cell>span{font-size:9px;padding:5px}#personnel-form .qualification-cell:has(input:checked)>strong{color:var(--portal-accent)}#personnel-form #person-notes textarea{min-height:100px;line-height:1.8}#personnel-form .personnel-save-bar{border-radius:5px;margin-top:22px;padding:15px 18px}#personnel-form .personnel-save-bar .btn{font-size:11px;min-height:37px}#personnel-form+.personnel-danger{margin-top:25px;border-radius:5px;padding:20px}#personnel-form+.personnel-danger h2{font-size:14px;font-family:EMS Inter,Arial,sans-serif}
@media(max-width:1000px){#personnel-form .personnel-fields{grid-template-columns:1fr;gap:18px}#personnel-form :is(#person-qualifications,#person-notes){grid-column:auto}}
@media(max-width:700px){.workbook-title{padding:16px}.workbook-title strong{font-size:13px}.workbook-state{font-size:9px;padding:5px 7px}.workbook-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.workbook-summary>div{padding:14px 16px;border-bottom:1px solid var(--portal-line)}.workbook-summary>div:nth-child(2n){border-right:0}.workbook-summary>div:nth-child(n+3){border-bottom:0}.workbook-summary dt{font-size:9px}.workbook-summary dd{font-size:15px}.workbook-tabs button{padding:12px 14px;font-size:10px}.personal-workbook{margin-bottom:19px}#personnel-form .personnel-form-grid{grid-template-columns:1fr}#personnel-form .personnel-form-grid>label{padding:15px 16px;border-right:0}#personnel-form .personnel-form-grid>.full{padding:15px 16px}#personnel-form .personnel-form-section>header{padding:16px}#personnel-form .personnel-form-section h2{font-size:14px}#personnel-form .personnel-form-section header p{font-size:10px!important}#personnel-form :is(input:not([type=checkbox]),select,textarea){font-size:14px;min-height:43px}#personnel-form .qualification-grid{padding:16px}#personnel-form .personnel-form-grid .field-note:not(.full){padding:15px 16px}#personnel-form .personnel-save-bar{padding:13px;gap:10px}#personnel-form .personnel-save-bar .btn{font-size:10px;padding:9px 10px}}
#personnel-form .personnel-fields{align-items:start}
/* Qualification tiles keep the sheet references while making each state explicit. */
#personnel-form .qualification-overview{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 22px 0;color:var(--portal-muted);font-size:11px;line-height:1.7}
#personnel-form .qualification-counter{padding:5px 9px;border-radius:5px;border:1px solid color-mix(in srgb,var(--portal-accent) 20%,transparent);background:var(--portal-soft);color:var(--portal-accent);font-size:10px;font-weight:650;white-space:nowrap}
#personnel-form .qualification-grid{grid-template-columns:repeat(6,minmax(0,1fr));padding:18px 22px 22px;gap:10px}
#personnel-form .qualification-cell{display:block;position:relative;border:1px solid var(--portal-line);border-radius:7px;padding:15px 14px;margin:0;min-width:0;min-height:93px;background:var(--portal-surface);cursor:pointer;transition:border-color .15s,background-color .15s}
#personnel-form .qualification-cell:hover{border-color:color-mix(in srgb,var(--portal-accent) 55%,var(--portal-line));background:color-mix(in srgb,var(--portal-accent) 4%,var(--portal-surface))}
#personnel-form .qualification-cell:has(input:checked){border-color:color-mix(in srgb,var(--portal-accent) 50%,var(--portal-line));background:color-mix(in srgb,var(--portal-accent) 9%,var(--portal-surface))}
#personnel-form .qualification-cell:focus-within{outline:2px solid var(--portal-accent);outline-offset:3px}
#personnel-form .qualification-cell:has(input:disabled){cursor:default}
#personnel-form .qualification-cell>input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;margin:0;padding:0;left:12px;top:12px;pointer-events:none}
#personnel-form .qualification-cell>.qualification-body{display:block;padding:0;border:0;background:transparent;margin:0;width:100%;font-size:inherit;font-weight:inherit;text-align:left}
#personnel-form .qualification-heading{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:20px}
#personnel-form .qualification-heading strong{font-size:14px;line-height:1.4;color:var(--portal-text);font-weight:700}
#personnel-form .qualification-reference{font-size:9px;line-height:1;color:var(--portal-muted);border:1px solid var(--portal-line);background:var(--portal-raised);border-radius:3px;min-width:19px;padding:4px 5px;text-align:center;font-weight:400}
#personnel-form .qualification-bottom{display:flex;justify-content:space-between;align-items:center;gap:7px}
#personnel-form .qualification-status{font-size:10px;font-weight:400;color:var(--portal-muted);line-height:1.5}
#personnel-form .qualification-switch{width:29px;height:17px;border:1px solid var(--portal-line);border-radius:12px;background:var(--portal-raised);position:relative;flex-shrink:0}
#personnel-form .qualification-switch::after{content:"";position:absolute;top:3px;left:3px;width:9px;height:9px;border-radius:50%;background:var(--portal-muted);transition:transform .15s}
#personnel-form .qualification-cell:has(input:checked) .qualification-switch{background:var(--portal-accent);border-color:var(--portal-accent)}
#personnel-form .qualification-cell:has(input:checked) .qualification-switch::after{transform:translateX(12px);background:var(--portal-bg)}
#personnel-form .qualification-cell:has(input:checked) :is(.qualification-status,.qualification-heading strong){color:var(--portal-accent)}
/* Account access: a clear current state for self, focused controls for other staff. */
#personnel-form .access-current{display:grid;grid-template-columns:1fr 1fr;padding:22px;gap:0}
#personnel-form .access-current>div{min-width:0;padding-right:20px;border-right:1px solid var(--portal-line)}
#personnel-form .access-current>div:last-child{padding:0 0 0 20px;border:0}
#personnel-form .access-current>div>span:first-child{display:block;font-size:11px;color:var(--portal-muted);margin-bottom:12px}
#personnel-form .access-current strong{font-size:18px;font-weight:650;color:var(--portal-text);line-height:1.7;display:block;overflow-wrap:anywhere}
#personnel-form .access-current small{display:block;font-size:10px;line-height:1.7;color:var(--portal-muted);margin-top:8px}
#personnel-form .access-current .badge{margin-top:5px}
#personnel-form .access-protected{display:flex;gap:11px;padding:15px 17px;margin:0 22px 22px;border:1px solid var(--portal-line);border-radius:6px;background:var(--portal-raised);align-items:flex-start}
#personnel-form .access-protected>span{font-size:14px;color:var(--portal-accent);line-height:1.7;flex-shrink:0}
#personnel-form .access-protected p{font-size:11px;margin:0;line-height:1.8}
#personnel-form .access-own-password{padding:20px 22px;border-top:1px solid var(--portal-line);display:flex;gap:15px;align-items:center;justify-content:space-between}
#personnel-form :is(.access-own-password,.access-password) h3{font-size:12px;font-weight:650;line-height:1.6;margin:0 0 6px;color:var(--portal-text)}
#personnel-form .access-own-password p{font-size:11px;margin:0;line-height:1.7}
#personnel-form .access-own-password .btn{font-size:11px;min-height:37px;white-space:nowrap}
#personnel-form .access-selects{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:22px}
#personnel-form .access-selects label{font-size:11px;font-weight:500;min-width:0}
#personnel-form .access-selects select{border-radius:5px;font-size:12px;margin-top:9px}
#personnel-form .access-rank-tools{padding:0 22px 20px}
#personnel-form .access-rank-tools>span{display:block;font-size:10px;font-weight:650;letter-spacing:.2px;color:var(--portal-muted);margin-bottom:10px}
#personnel-form .access-rank-tools>div{display:flex;gap:9px}
#personnel-form .access-rank-tools .btn{font-size:11px;min-height:35px;flex:1}
#personnel-form .access-rank-tools p{font-size:10px;line-height:1.8;margin:11px 0 0}
#personnel-form .access-password{padding:20px 22px;border-top:1px solid var(--portal-line);background:color-mix(in srgb,var(--portal-accent) 2%,var(--portal-surface))}
#personnel-form .access-password label{font-size:11px;display:block;margin-top:13px}
#personnel-form .access-password input{border-radius:5px}
#personnel-form .access-password p{font-size:10px;line-height:1.8;margin:10px 0 0}
#personnel-form .access-approval{padding:16px 22px;background:var(--portal-soft);border-top:1px solid var(--portal-line);display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:1200px){#personnel-form .qualification-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#personnel-form .access-selects{grid-template-columns:1fr}#personnel-form .access-own-password{align-items:flex-start;flex-direction:column}}
@media(max-width:1000px){#personnel-form .access-selects{grid-template-columns:1fr 1fr}#personnel-form .access-own-password{flex-direction:row;align-items:center}#personnel-form .qualification-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){#personnel-form .qualification-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 16px 18px;gap:9px}#personnel-form .qualification-overview{padding:16px 16px 0;flex-direction:column;gap:8px;align-items:flex-start;font-size:10px}#personnel-form .qualification-cell{padding:13px 12px;min-height:87px}#personnel-form .qualification-heading{margin-bottom:17px}#personnel-form .qualification-heading strong{font-size:13px}#personnel-form .qualification-status{font-size:9px}#personnel-form .qualification-switch{width:27px}#personnel-form .qualification-cell:has(input:checked) .qualification-switch::after{transform:translateX(10px)}#personnel-form .access-current{padding:19px 16px}#personnel-form .access-current strong{font-size:15px}#personnel-form .access-current>div{padding-right:12px}#personnel-form .access-current>div:last-child{padding-left:12px}#personnel-form .access-protected{margin:0 16px 19px;padding:13px;gap:9px}#personnel-form .access-protected p{font-size:10px}#personnel-form .access-own-password{padding:18px 16px;flex-direction:column;align-items:flex-start;gap:13px}#personnel-form .access-selects{padding:19px 16px;grid-template-columns:1fr;gap:17px}#personnel-form .access-selects select{font-size:14px}#personnel-form .access-rank-tools{padding:0 16px 19px}#personnel-form .access-password{padding:19px 16px}#personnel-form .access-password input{font-size:14px}#personnel-form .access-rank-tools .btn{font-size:11px;padding:9px 10px}#personnel-form .access-approval{padding:16px}}
.personnel-sanctions{margin-top:26px;overflow:hidden;scroll-margin-top:24px;border-top:2px solid var(--portal-gold)!important}.personnel-sanctions>header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 24px;border-bottom:1px solid var(--portal-line)}.personnel-sanctions .section-path{font-size:9px;letter-spacing:1px;color:var(--portal-gold);margin-bottom:8px}.personnel-sanctions h2{font-family:EMS Inter,Arial,sans-serif;font-size:17px;margin:0 0 8px;font-weight:700}.personnel-sanctions header p{font-size:12px!important;line-height:1.8;margin:0}.personnel-sanctions header p strong{color:var(--portal-text);font-weight:650}.personnel-sanctions .row-actions .btn{font-size:11px;min-height:38px}.person-sanction-counts{display:flex;align-items:center;gap:25px;flex-wrap:wrap;padding:18px 24px;background:var(--portal-raised);border-bottom:1px solid var(--portal-line);font-size:12px;color:var(--portal-muted)}.person-sanction-counts strong{font-size:19px;font-weight:700;color:var(--portal-text);margin-right:6px}.person-sanction-counts>span:nth-child(2) strong{color:#d9897a}.person-sanction-counts>span:last-child{font-size:11px;margin-left:auto}.personnel-sanctions>form{padding:22px 24px;border-bottom:1px solid var(--portal-line);background:color-mix(in srgb,var(--portal-gold) 3%,var(--portal-surface))}.sanction-target{font-size:12px;padding:12px 14px;background:var(--portal-raised);border:1px solid var(--portal-line);border-radius:5px;color:var(--portal-muted);margin-bottom:20px;line-height:1.8}.sanction-target strong{color:var(--portal-text)}.personnel-sanctions .form-grid{gap:19px}.personnel-sanctions .form-grid label{font-size:12px}.personnel-sanctions textarea{min-height:85px;line-height:1.8}.sanction-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.person-sanction-feedback{font-size:12px!important;color:var(--portal-accent)!important;padding:15px 24px 0;margin:0}.person-sanction-feedback:empty{display:none}.person-sanction-history{padding:0 24px}.person-sanction-empty{padding:27px 0;font-size:12px;line-height:1.8;color:var(--portal-muted)}.person-sanction-entry{padding:22px 0;border-bottom:1px solid var(--portal-line)}.person-sanction-entry:last-child{border:0}.sanction-entry-heading{display:flex;align-items:center;gap:13px;margin-bottom:12px;font-size:11px;color:var(--portal-muted)}.sanction-entry-heading>time{margin-left:auto;font-size:11px}.person-sanction-entry h3{font-size:14px;font-weight:650;margin:0 0 10px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.person-sanction-entry p{font-size:12px!important;line-height:1.8;margin:0 0 12px;white-space:pre-wrap;overflow-wrap:anywhere}.person-sanction-entry small{font-size:10px;color:var(--portal-muted);line-height:1.8}.personnel-sanctions>footer{padding:16px 24px;border-top:1px solid var(--portal-line);background:color-mix(in srgb,var(--portal-accent) 2%,var(--portal-surface))}.personnel-sanctions>footer .text-button{font-size:11px}
@media(max-width:700px){.personnel-sanctions>header{display:block;padding:20px 18px}.personnel-sanctions h2{font-size:16px}.personnel-sanctions .row-actions{margin-top:17px;gap:9px}.personnel-sanctions .row-actions .btn{font-size:10px;padding:9px 11px}.person-sanction-counts{padding:16px 18px;gap:15px;font-size:11px}.person-sanction-counts strong{font-size:18px}.person-sanction-counts>span:last-child{margin:0;width:100%;font-size:10px}.personnel-sanctions>form{padding:20px 18px}.person-sanction-history{padding:0 18px}.personnel-sanctions .form-grid{gap:18px}.person-sanction-entry h3{font-size:13px}.sanction-entry-heading{gap:9px;font-size:10px;flex-wrap:wrap}.sanction-entry-heading>time{font-size:10px}.person-sanction-feedback{padding:15px 18px 0}.personnel-sanctions>footer{padding:15px 18px}.sanction-form-actions .btn{font-size:11px}.personnel-sanctions textarea{font-size:14px}}

#personnel-form input[name=callsign][readonly]{color:var(--portal-accent);background:var(--portal-soft);border-color:color-mix(in srgb,var(--portal-accent) 25%,var(--portal-line));font-weight:650;cursor:default}#personnel-form .callsign-hint{display:block;color:var(--portal-muted);font-size:10px;font-weight:400;line-height:1.8;margin-top:9px}#personnel-form input[name=callsign][aria-busy=true]{opacity:.65}
.personnel-identity{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--portal-soft);border:1px solid color-mix(in srgb,var(--portal-accent) 30%,var(--portal-line));border-radius:7px;padding:20px 22px;margin-bottom:22px}.personnel-identity>div:first-child{min-width:0}.personnel-identity>div>span{display:block;font-size:9px;letter-spacing:1px;font-weight:650;color:var(--portal-accent);margin-bottom:9px}.personnel-identity strong{display:block;font-size:21px;font-weight:700;line-height:1.6;color:var(--portal-text);overflow-wrap:anywhere}.personnel-identity small{display:block;font-size:10px;line-height:1.8;color:var(--portal-muted);margin-top:7px}.identity-copy-actions{display:flex;gap:10px;flex-shrink:0}.identity-copy-actions .btn{font-size:11px;min-height:38px}.member-copy-button{display:block;padding:0;margin-top:6px;font-size:10px!important}.user-block>span:nth-child(2){min-width:0;flex:1}.user-block strong{overflow-wrap:anywhere;line-height:1.6}.clipboard-fallback{position:fixed;top:25px;left:50%;transform:translateX(-50%);width:min(500px,90vw);z-index:1500;background:var(--portal-surface);color:var(--portal-text);border:2px solid var(--portal-accent);padding:16px;border-radius:7px;box-shadow:var(--portal-shadow)}
@media(max-width:700px){.personnel-identity{display:block;padding:18px 16px}.personnel-identity strong{font-size:19px}.identity-copy-actions{margin-top:16px;gap:9px}.identity-copy-actions .btn{font-size:11px;padding:9px 12px}.personnel-identity small{font-size:10px}.member-list .member-copy-button{font-size:10px!important;margin-top:5px}}
