/* AresPaper – Personal: Mitarbeiter & Arbeitsverträge, Lohn, Subunternehmer-Gutschriften (Paket A) */

/* versteckte Felder bleiben versteckt, auch wenn label.f / .row eine eigene Anzeige setzen */
.pers-form [hidden],.pers-lohnform [hidden],.pers-vl [hidden]{display:none!important}

/* Mitarbeiter: Liste */
.pers-ma td{vertical-align:middle}
.pers-art{display:inline-block;border-radius:10px;padding:0 8px;font-size:11.5px;font-weight:600;line-height:18px;background:var(--line-2);color:var(--ink-2);white-space:nowrap;vertical-align:1px}
.pers-art-vollzeit{background:var(--soll-bg);color:var(--soll)}
.pers-art-teilzeit{background:var(--stamp-bg);color:var(--stamp)}
.pers-art-minijob{background:var(--warn-bg);color:var(--warn-ink)}

/* Mitarbeiter: Detail */
.pers-detail{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:16px;align-items:start}
.pers-detail>*{min-width:0}
.pers-form{display:grid;gap:12px}
.pers-form h2{margin-bottom:12px}
.pers-form div.f{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink-2)}
.pers-side{display:grid;gap:12px}
.pers-req{color:var(--haben);margin-left:1px}
.pers-seg{display:inline-flex;align-self:flex-start;border:1px solid var(--line);border-radius:var(--r-s);overflow:hidden;background:var(--field);max-width:100%}
.pers-seg label{position:relative;cursor:pointer;display:block}
.pers-seg input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.pers-seg span{display:block;padding:6px 14px;font-size:13.5px;color:var(--ink-2);border-left:1px solid var(--line);white-space:nowrap}
.pers-seg label:first-child span{border-left:0}
.pers-seg label:hover span{background:var(--line-2)}
.pers-seg input:checked+span{background:var(--soll-fill);color:var(--on-fill)}
.pers-seg input:focus-visible+span{outline:2px solid var(--focus);outline-offset:-2px}
.pers-calc{font-size:13px;color:var(--ink-2);background:var(--sheet-2);border:1px solid var(--line-2);border-radius:var(--r-s);padding:8px 10px}
.pers-hints{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pers-hints li{padding:6px 10px;border-radius:var(--r-s);font-size:12.5px;line-height:1.4;border-left:3px solid var(--soll);background:var(--soll-bg)}
.pers-hints li.warn{border-left-color:var(--warn);background:var(--warn-bg)}
.pers-hints li.bad{border-left-color:var(--haben);background:var(--haben-bg)}
.pers-werte{margin-top:10px;line-height:1.6}
.pers-werte b{color:var(--ink);font-weight:600}
.pers-muster{margin:4px 0 8px;font-weight:600}
.pers-vt{border-top:1px solid var(--line-2);padding:10px 0 2px;margin-top:8px}
.pers-vt .row{gap:8px}
.pers-vt-btn{margin-top:8px;gap:6px}

/* Abstandhalter in Zeilen (wie .head .sp) */
.pers-detail .sp,.pers-sub .sp,.pers-block .sp,.pers-vl .sp,.pers-sh .sp,#pl-f .sp{flex:1}

/* Abschnitts-Kopf in randlosen Tabellen-Blättern */
.pers-sh{display:flex;align-items:baseline;gap:6px 12px;padding:12px 14px 6px;flex-wrap:wrap}
.pers-sh h2{margin:0}
.pers-block{margin-bottom:16px}
.pers-acts{white-space:nowrap}
.pers-acts .btn{margin-left:4px}

/* PDF-/Bildvorschau im Dialog */
.pers-pdf{height:min(76vh,1000px);background:var(--preview-bg);border-radius:var(--r-s);overflow:hidden;display:flex;align-items:center;justify-content:center}
.pers-pdf iframe{width:100%;height:100%;border:0;background:#fff}
.pers-pdf img{max-width:100%;max-height:100%;object-fit:contain;background:#fff}

/* Lohn */
.pers-intro{margin:-6px 0 14px;max-width:1000px}
.pers-cols{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:16px;align-items:start;margin-bottom:16px}
.pers-cols>*{min-width:0}
.pers-lt td{vertical-align:middle}
.pers-dates{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.pers-dates li{display:grid;grid-template-columns:84px minmax(0,1fr);gap:8px;font-size:13px;line-height:1.4}
.pers-dates b{font-variant-numeric:tabular-nums}
.pers-kv{display:grid;grid-template-columns:auto auto;gap:1px 12px;font-size:13px;margin-top:4px;justify-content:space-between}
.pers-kv b{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.pers-vb td,.pers-vb th{white-space:nowrap}
.pers-imp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;align-items:start}
.pers-imp>*{min-width:0}
.pers-imp-prev{height:68vh;position:sticky;top:0}
.pers-lohnform h3{margin:14px 0 6px;font-size:12.5px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.4px}
.pers-lohnform div.f{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--ink-2)}
.pers-erk input{border-color:var(--stamp);background:var(--stamp-bg)}
.pers-sum{margin-top:12px;border-top:1px solid var(--line);padding-top:12px}
.pers-sumrow{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:10px}
.pers-sumrow>div{display:flex;flex-direction:column}
.pers-sumrow b{font-size:16px;font-variant-numeric:tabular-nums}
.pers-bs td{padding:5px 8px}
.pers-kvt td{padding:4px 8px}

/* Gutschriften */
.pers-sub{margin-bottom:12px}
.pers-sub .row h2{margin-right:4px}
.pers-zt{margin-top:10px}
.pers-zt td{vertical-align:middle}
.pers-cb{width:30px;text-align:center}

/* Einstellungen → Arbeitsvertrag */
.pers-vl{margin-top:14px}
.pers-vl-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.pers-vl-grid>*{min-width:0}
.pers-vl textarea{width:100%;min-height:540px;font:12.5px/1.55 var(--mono);tab-size:2;white-space:pre-wrap}
.pers-chips{display:flex;flex-wrap:wrap;gap:3px 2px;max-height:230px;overflow:auto;padding:2px 0}
.pers-chips .chip{border:0;font:inherit;font-size:12px;line-height:20px}
.pers-syntax{table-layout:fixed}
.pers-syntax td{font-size:12px;padding:5px 6px;vertical-align:top;overflow-wrap:anywhere}
.pers-syntax td:first-child{width:46%}
.pers-syntax code,.pers-vl-help code{font:11.5px var(--mono);background:var(--line-2);padding:1px 4px;border-radius:3px}

@media (max-width:1280px){
  .pers-detail,.pers-cols{grid-template-columns:minmax(0,1fr)}
  .pers-side{order:-1;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start}
  .pers-vl-grid{grid-template-columns:minmax(0,1fr)}
  .pers-vl-help{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 18px}
  .pers-vl-help>table,.pers-vl-help>p{grid-column:1/-1}
}
@media (max-width:1100px){
  .pers-imp{grid-template-columns:minmax(0,1fr)}
  .pers-imp-prev{height:42vh;position:static}
}
@media (max-width:900px){
  .pers-vl-help{display:block}
}

/* 1.12: Status, Unterlagen fürs Lohnbüro, Online-Unterschrift */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pers-st-akt{background:var(--stamp-bg);color:var(--stamp)}
.pers-st-bald{background:var(--warn-bg);color:var(--warn-ink)}
.pers-st-aus{background:var(--grey-bg);color:var(--grey-ink)}
.pers-st-del{background:var(--haben-bg);color:var(--haben)}
.pers-ma td.pers-acts{width:1%}
.pers-lb-z{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line-2)}
.pers-lb-z:first-of-type{border-top:0}
.pers-lb-btn{gap:6px;flex:none}
.pers-us{border-top:1px solid var(--line-2);padding:9px 0 2px}
.pers-us:first-of-type{border-top:0;padding-top:2px}
.pers-us .row{gap:8px}
.pers-link{display:flex;gap:8px}
.pers-link input{flex:1;min-width:0;font:12.5px var(--mono)}
.pers-qr{display:flex;align-items:center;gap:14px;margin-top:12px}
.pers-qr svg{width:150px;height:150px;background:#fff;border-radius:6px;flex:none}
.pers-vorort{height:min(78vh,1100px);border-radius:var(--r-s);overflow:hidden;border:1px solid var(--line)}
.pers-vorort iframe{width:100%;height:100%;border:0;background:var(--paper)}
.pers-ag-sig,.pers-ag-box{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0}
.pers-ag-box{border:1px solid var(--line);border-radius:var(--r-m);padding:10px 12px;background:var(--sheet-2)}
.pers-ag-box .sp{flex:1}
.pers-sigprev{background:#fff;border:1px solid var(--line);border-radius:6px;padding:4px 10px;line-height:0}
.pers-sigprev svg{max-width:240px;height:48px}
.pers-weg{flex-wrap:wrap}
.pers-docs{table-layout:fixed;width:100%}
.pers-docs td:first-child{overflow-wrap:anywhere}
.pers-docs td.r{width:92px}
/* Unterschriftenfeld (bleibt hell wie Papier) */
.sigpad{position:relative;height:170px;border:1px solid var(--line-3);border-radius:var(--r-m);background:#fff;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}
.sigpad canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none}
.sigpad-linie{position:absolute;left:6%;right:6%;bottom:26%;border-bottom:1.5px dashed #9AA5B1;pointer-events:none}
.sigpad-hint{position:absolute;left:6%;bottom:calc(26% - 20px);font-size:12px;color:#7D8995;pointer-events:none}
.sigpad.hat .sigpad-hint{display:none}
.sigpad-clear{position:absolute;top:6px;right:6px;border:1px solid #D8DEE3;background:#fff;color:#4A5866;border-radius:5px;padding:3px 9px;font-size:12px;cursor:pointer}
#us-ag-padbox[hidden],#us-mail[hidden],.pers-ag-sig[hidden]{display:none!important}

/* Stundennachweis */
.lm-status{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0 0 10px}
.lm-box{margin-bottom:14px}
.lm-t td{vertical-align:top}
.lm-t td.c,.lm-t th.c{text-align:center}
.lm-nr{width:28px;color:var(--ink-3);text-align:right}
.lm-t input.lm-num{width:92px;text-align:right}
/* Stunden aus dem Vormonat übernommen: sichtbar als Vorschlag, bis jemand den Wert ändert */
.lm-t input.lm-vorschlag{background:var(--warn-bg);border-color:var(--warn-line)}
.lm-t input.lm-pnr{width:96px}
.lm-t input[type=checkbox]{width:18px;height:18px}
.lm-kr{display:flex;align-items:center;gap:4px;margin-bottom:4px}
.lm-kr input{width:138px}
.lm-kr-x{padding:2px 7px}
.lm-bem{padding:12px 14px 14px;border-top:1px solid var(--line-2)}
.lm-bem textarea{width:100%}
.lms-anh td,.lms-anh th{padding:5px 8px}
.lms-anh .c{text-align:center}
@media (max-width:900px){
  .lm-t thead{display:none}
  .lm-t,.lm-t tbody,.lm-t tr,.lm-t td,.lm-t tfoot{display:block;width:100%}
  .lm-t tr{border-bottom:1px solid var(--line);padding:8px 12px}
  .lm-t td{border:0;padding:3px 0;text-align:left!important}
  .lm-t td[data-l]::before{content:attr(data-l);display:block;font-size:11.5px;color:var(--ink-3)}
  .lm-t td.lm-nr{display:none}
  .lm-t input.lm-num,.lm-t input.lm-pnr{width:100%;text-align:left}
  .lm-kr input{width:auto;flex:1;min-width:0}
}
.pers-seg input:disabled+span{opacity:.45;cursor:not-allowed}
.pers-seg label:has(input:disabled):hover span{background:none}

/* Kündigung (kuendigung.js) */
.pers-hints li.ok{border-left-color:var(--stamp);background:var(--stamp-bg)}
.pk-k{border-top:1px solid var(--line-2);padding:10px 0 2px;margin-top:8px}
.pk-k .row{gap:8px}
.pk .pk-k:first-of-type{border-top:0;margin-top:4px}
.pk .pk-k .small{margin-top:3px}
.pk-hw{margin-top:8px}
.pk-mehr{margin-top:4px}
.pk-pk{margin:10px 0 0}
.pk-blink{animation:pk-blink 1.6s ease-out}
@keyframes pk-blink{0%,40%{box-shadow:0 0 0 3px var(--focus)}100%{box-shadow:0 0 0 0 transparent}}
.pk-opt{gap:4px}
.pk-opt .pk-fa{max-width:240px;margin:0 0 4px 26px}
.pk-pruef{margin-top:10px;font-size:13px}
.pk-pruef summary{cursor:pointer;color:var(--ink-2)}
.pk-pruef ul,.pk-pl{margin:6px 0 0;padding-left:18px;display:grid;gap:4px;font-size:13px;color:var(--ink-2)}
#pk-vorschau{margin-top:8px}
#pk-formular[hidden],#pk-vorschau[hidden],#ko-mail[hidden],#ko-ag-padbox[hidden],#ko-ag-alt[hidden],.pk-fa[hidden],.pk-nf[hidden],.pu-aus[hidden]{display:none!important}
.pk-ev td{vertical-align:top}
.pk .linklike,#pk-frist .linklike{background:none;border:0;padding:0;color:var(--soll);text-decoration:underline;cursor:pointer;font:inherit}
