.candidate-dossier{display:grid;gap:20px;margin:20px 0}.candidate-dossier .editor-section{margin:0}.dossier-links{display:grid;gap:8px;margin-bottom:16px}.dossier-request{display:flex;flex-direction:column;gap:5px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;text-decoration:none;color:var(--text)}.dossier-request span,.dossier-request small{font-size:13px;color:var(--muted)}.candidate-request-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.candidate-request-button svg{width:17px;height:17px}.candidate-link-cell{text-align:center}.dossier-passport summary{display:flex;align-items:center;gap:12px;padding:20px;cursor:pointer;font-weight:700}.dossier-passport summary svg{width:22px;height:22px;color:var(--accent)}.dossier-passport summary small{margin-left:auto;font-size:12px;font-weight:400;color:var(--muted)}.dossier-passport-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dossier-passport-grid label{display:flex;flex-direction:column;gap:7px}.dossier-wide{grid-column:1/-1}.dossier-files{display:grid;gap:10px;margin:24px 0 16px;padding-top:18px;border-top:1px solid var(--border)}.dossier-file,.dossier-file>div{display:flex;align-items:center;gap:12px}.dossier-file{justify-content:space-between;flex-wrap:wrap}.dossier-file svg{width:22px;height:22px}.dossier-file span{display:grid;gap:4px}.dossier-file strong{overflow-wrap:anywhere}.dossier-file small{color:var(--muted)}.candidate-request-dialog{width:min(660px,calc(100vw - 32px));max-height:85vh;border:1px solid var(--border);border-radius:20px;padding:24px;background:var(--panel);color:var(--text);box-shadow:0 24px 80px #0006}.candidate-request-dialog::backdrop{background:#031d2488;backdrop-filter:blur(4px)}.dossier-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}.dossier-dialog-head h2{font-size:22px;margin:0}.dossier-dialog-head p{margin:7px 0 0;color:var(--muted)}.candidate-request-dialog form>label{display:grid;gap:8px}.dossier-request-options{display:grid;gap:8px;max-height:45vh;overflow:auto;margin-top:18px;padding:2px}.dossier-request-option{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--border);border-radius:12px;cursor:pointer}.dossier-request-option[hidden]{display:none}.dossier-request-option:has(input:checked){border-color:var(--accent);background:var(--active-bg,#0aa8aa15)}.dossier-request-option:has(input:disabled){opacity:.6}.dossier-request-option input{width:18px;height:18px;flex:none}.dossier-request-option span{display:grid;gap:6px}.dossier-request-option small{color:var(--muted)}[data-request-candidates] .r-panel-body{display:grid;gap:10px}
@media(max-width:640px){.dossier-passport-grid{grid-template-columns:1fr}.dossier-passport summary{padding:16px;flex-wrap:wrap}.dossier-passport summary small{margin-left:34px}.candidate-request-dialog{padding:18px}.dossier-file .r-actions{width:100%}}
.candidate-table .r-list table{min-width:1040px}.candidate-table th:nth-child(1){width:24%}.candidate-table th:nth-child(2){width:20%}.candidate-table th:nth-child(3){width:14%}.candidate-table th:nth-child(4){width:17%}.candidate-table th:nth-child(5){width:13%}.candidate-table th:nth-child(6){width:12%}.candidate-table .candidate-link-cell{padding:12px 8px}.candidate-table .candidate-request-button{padding:8px 10px;min-height:36px;font-size:12px}
.request-period-end label{display:grid;gap:7px}

.dossier-link-title{display:grid;gap:6px;text-decoration:none;color:var(--text)}.dossier-link-title:hover strong{text-decoration:underline}.dossier-attendance-row{gap:12px}.dossier-attendance-row[data-attendance-state="started"]{border-color:#2d9e73;background:#2d9e7315}.dossier-attendance-row[data-attendance-state="no_show"]{border-color:#c875635c;background:#c875630a}.dossier-attendance-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.dossier-attendance-label{font-size:13px;font-weight:650}.dossier-attendance-row[data-attendance-state="started"] .dossier-attendance-label{color:var(--success,#2d9e73)}.dossier-attendance-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.dossier-attendance-buttons button{padding:8px 12px;min-height:38px;font-size:13px}.dossier-attendance-buttons [data-status="started"][aria-pressed="true"]{background:#2d9e7324;border-color:#2d9e73;color:var(--text);opacity:1}.dossier-attendance-buttons [data-status="no_show"][aria-pressed="true"]{border-color:#c87563;opacity:1}.dossier-attendance-controls .error:empty{display:none}.dossier-attendance-controls .error{flex-basis:100%;margin:0}.dossier-staffing{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.dossier-staffing>span{display:grid;gap:6px;border:1px solid var(--border);border-radius:12px;padding:12px;font-size:12px;color:var(--muted)}.dossier-staffing strong{font-size:24px;color:var(--text)}.dossier-staffing .is-started{border-color:#2d9e7377}.dossier-staffing .is-remaining{background:var(--active-bg,#0aa8aa15);border-color:var(--accent)}.request-candidate-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;margin:8px 0}.request-remaining{color:var(--accent)}.request-candidate-progress+meter{display:block;width:100%;height:7px}
@media(max-width:640px){.dossier-staffing{grid-template-columns:repeat(3,minmax(0,1fr))}.dossier-staffing>span{padding:10px}.dossier-attendance-buttons{margin-left:0;width:100%}.dossier-attendance-buttons button{flex:1}.dossier-attendance-buttons [data-status="pending"]{flex-basis:100%}}

.dossier-option-address{display:flex;align-items:flex-start;gap:6px;white-space:normal;overflow-wrap:anywhere}.dossier-option-address svg{width:15px;height:15px;flex:none;margin-top:2px}
/* Recruiter plans and callbacks use the same compact controls as candidate cards. */
.foreman-call{width:38px!important;height:38px;min-width:38px!important;padding:8px!important;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.foreman-call svg{margin:0!important;width:19px;height:19px}.request-foreman-person{gap:8px}
.candidate-callback{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--panel);margin:8px 0;display:grid;gap:8px}.candidate-callback[hidden]{display:none}.candidate-callback label{display:grid;gap:8px}.candidate-callback small{color:var(--muted);line-height:1.5}.candidate-callback svg{width:20px;height:20px;vertical-align:middle}
.recruiter-plan-dialog{max-width:480px}.recruiter-plan-dialog label{display:grid;gap:8px}.recruiter-plan-dialog form{padding:0 22px 22px}
.recruiter-time-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:18px 0}.recruiter-time-filters label{display:grid;gap:5px;min-width:150px}.recruiter-time-filters label:last-child{min-width:240px;flex:1}
.recruiter-time-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.recruiter-time-totals>div{padding:12px 16px;border:1px solid var(--border);border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--panel)}.recruiter-time-totals span{font-size:12px;color:var(--muted)}.recruiter-time-totals strong{font-size:22px}
.recruiter-timesheet .table-wrap{max-height:none;overflow-x:auto}.recruiter-timesheet table{min-width:1060px}.recruiter-timesheet th,.recruiter-timesheet td{vertical-align:top!important;text-align:left!important;padding:14px!important}.recruiter-timesheet td small{display:block;margin-top:5px;color:var(--muted)}.recruiter-timesheet .dossier-attendance-buttons{display:flex;flex-wrap:wrap;gap:6px}.recruiter-timesheet .dossier-attendance-controls{min-width:245px;align-items:flex-start}.recruiter-shift-list{padding-left:18px;line-height:1.6}.dossier-confirmed{color:#29ad85}.dossier-awaiting{color:var(--muted)}
@media(max-width:700px){.recruiter-time-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.recruiter-time-filters label{min-width:0;flex:1}.recruiter-time-filters label:last-child{flex-basis:100%}.recruiter-plan-dialog{align-self:end;margin:0;width:100%;max-width:none;border-radius:22px 22px 0 0}.recruiter-timesheet .r-subheading{flex-wrap:wrap}}

.recruiter-timesheet .dossier-attendance-controls{display:grid;gap:8px;max-width:310px}.recruiter-timesheet .dossier-attendance-buttons{margin-left:0}.recruiter-timesheet .dossier-attendance-controls>button{justify-self:start}.recruiter-timesheet td:first-child{min-width:160px}.recruiter-timesheet td:nth-child(2){min-width:180px}.recruiter-timesheet td:last-child{min-width:180px}.recruiter-timesheet .r-subheading>a{white-space:nowrap}.dossier-attendance-controls>small{max-width:100%}

.recruiter-timesheet td:last-child .status{white-space:normal;line-height:1.5}.recruiter-timesheet .dossier-attendance-controls p:empty{display:none}

.recruiter-callback-overview{margin:18px 0}.recruiter-callback-overview h2{display:flex;align-items:center;gap:10px}.recruiter-callback-overview svg{width:20px;height:20px;flex-shrink:0}.recruiter-callback-row{display:flex;align-items:center;gap:16px;padding:14px 20px;border-top:1px solid var(--border);color:var(--text)}.recruiter-callback-row strong{flex:1}.recruiter-callback-row span{color:var(--muted)}@media(max-width:600px){.recruiter-callback-row{flex-wrap:wrap}.recruiter-callback-row span{order:2;width:100%}}
