:root{--bg:#f6f7fb;--surface:#fff;--surface-muted:#f1f3f8;--text:#151922;--muted:#6b7280;--line:#e4e7ef;--accent:#2a1eee;--accent-soft:#eeedff;--green:#15803d;--green-soft:#eaf8ef;--yellow:#a16207;--yellow-soft:#fff7df;--red:#b42318;--red-soft:#fff0ee;--gray-soft:#edf0f5;--shadow:0 10px 28px #15192214}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{background:var(--bg);min-height:100%;color:var(--text);letter-spacing:0;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #2a1eee3d}.app-shell{min-height:100vh;padding:12px 12px 92px}.app-frame{width:min(100%,1080px);margin:0 auto}.topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6f7fbeb;margin:-12px -12px 12px;padding:12px;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:10px;display:flex}.topbar-actions{flex:none;align-items:center;gap:8px;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-mark{background:var(--accent);color:#fff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 10px 24px #2a1eee38}.brand-title{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;font-weight:750;line-height:1.1;overflow:hidden}.brand-caption{color:var(--muted);margin:3px 0 0;font-size:13px}.icon-button{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--text);border-radius:14px;flex:none;place-items:center;display:grid}.mini-button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);border-radius:14px;padding:0 12px;font-size:13px;font-weight:750}.login-section{align-content:center;min-height:calc(100vh - 56px);display:grid}.login-brand{padding:8px 0 2px}.role-switcher,.date-switcher,.filter-row{scrollbar-width:none;gap:8px;padding:2px 0;display:flex;overflow-x:auto}.role-switcher::-webkit-scrollbar{display:none}.date-switcher::-webkit-scrollbar{display:none}.filter-row::-webkit-scrollbar{display:none}.role-switcher{margin:10px 0 0}.date-mode-switcher{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.segmented-button,.chip-button,.date-button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);border-radius:14px;flex:none;font-size:14px;font-weight:700}.segmented-button{justify-content:center;align-items:center;gap:7px;padding:0 14px;display:inline-flex}.segmented-button.active,.chip-button.active,.date-button.active{border-color:var(--accent);background:var(--accent);color:#fff}.section{margin-top:14px}.settings-tabs{scrollbar-width:none;gap:8px;margin:10px 0 12px;padding-bottom:2px;display:flex;overflow-x:auto}.settings-tabs::-webkit-scrollbar{display:none}.settings-panel-list{gap:10px;display:grid}.tab-badge{background:var(--red-soft);min-width:21px;height:21px;color:var(--red);border-radius:999px;place-items:center;font-size:12px;font-weight:900;display:inline-grid}.segmented-button.active .tab-badge{color:#fff;background:#fff3}.section-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.section-title{margin:0;font-size:18px;font-weight:780;line-height:1.2}.section-note{color:var(--muted);margin:4px 0 0;font-size:13px}.date-switcher{margin-top:8px}.date-shortcuts{justify-content:center;margin-top:8px;display:flex}.date-button{padding:0 13px}.date-picker-card,.period-picker-card{gap:8px;display:grid}.date-picker-card{grid-template-columns:44px 1fr 44px;align-items:center}.period-picker-card{grid-template-columns:1fr}.date-input-wrap{border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--accent);box-shadow:var(--shadow);border-radius:15px;align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:800;display:flex}.date-input-wrap input{width:100%;min-width:0;height:44px;color:var(--text);appearance:none;background:0 0;border:0;outline:none;font-size:16px;font-weight:760}.date-input-wrap span{color:var(--muted);flex:none}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.metric{border:1px solid var(--line);background:var(--surface);min-height:88px;box-shadow:var(--shadow);border-radius:18px;padding:14px}.metric-label{color:var(--muted);font-size:13px;font-weight:650;display:block}.metric-value{margin-top:8px;font-size:30px;font-weight:820;line-height:1;display:block}.metric-note{color:var(--muted);margin-top:7px;font-size:12px;font-weight:750;line-height:1.2;display:block}.metric.accent{background:var(--accent-soft);border-color:#2a1eee2e}.metric.risk{background:var(--red-soft);border-color:#b4231826}.manager-summary{border:1px solid var(--line);background:var(--surface);color:var(--text);box-shadow:var(--shadow);border-radius:16px;margin-top:10px;padding:12px 14px;font-size:14px;font-weight:750;line-height:1.35}.manager-summary.ok{background:var(--green-soft);color:var(--green);border-color:#15803d2e}.manager-summary.warning{background:var(--yellow-soft);color:var(--yellow);border-color:#a162072e}.manager-summary.risk{background:var(--red-soft);color:var(--red);border-color:#b4231826}.arrival-breakdown{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;margin-top:10px;padding:12px}.arrival-breakdown-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.arrival-breakdown-head strong{font-size:14px;font-weight:820}.arrival-breakdown-head span{color:var(--muted);font-size:13px;font-weight:700}.arrival-list{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;display:grid}.arrival-row{background:var(--surface-muted);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:8px 10px;display:flex}.arrival-row span{color:var(--muted);font-size:13px;font-weight:750}.arrival-row strong{color:var(--text);font-size:18px;line-height:1}.arrival-plan-list{gap:10px;display:grid}.arrival-plan-card,.request-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:18px;gap:10px;padding:14px;display:grid}.request-list{gap:10px;display:grid}.vacancy-editor-list{gap:12px;display:grid}.meta-editor{border:1px solid var(--line);background:var(--surface-muted);border-radius:18px;gap:12px;margin-bottom:14px;padding:12px;display:grid}.vacancy-editor{border:1px solid var(--line);background:var(--surface-muted);border-radius:18px;gap:12px;padding:12px;display:grid}.request-grid{gap:8px;display:grid}.info-item{background:var(--surface-muted);border-radius:14px;gap:4px;padding:10px;display:grid}.info-item span{color:var(--muted);font-size:12px;font-weight:750}.info-item strong{color:var(--text);font-size:14px;font-weight:750;line-height:1.35}.status-control{flex-wrap:wrap;gap:8px;display:flex}.status-stack{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.task-chips,.task-grid{flex-wrap:wrap;gap:8px;display:flex}.task-chip,.task-toggle{border:1px solid var(--line);background:var(--surface-muted);min-height:36px;color:var(--muted);border-radius:999px;padding:8px 10px;font-size:13px;font-weight:800}.task-chip.done,.task-toggle.active{background:var(--green-soft);color:var(--green);border-color:#15803d2e}.manager-control{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.manager-control-item{border:1px solid var(--line);background:var(--surface);min-height:90px;box-shadow:var(--shadow);border-radius:18px;padding:14px}.manager-control-item strong{margin-top:8px;font-size:30px;font-weight:820;line-height:1;display:block}.manager-control-label{color:var(--muted);font-size:13px;font-weight:750;display:block}.manager-control-item.danger{background:var(--red-soft);border-color:#b4231826}.manager-control-item.warning{background:var(--yellow-soft);border-color:#a1620726}.manager-list{gap:8px;margin-top:10px;display:grid}.manager-row{border:1px solid var(--line);background:var(--surface);width:100%;min-height:56px;color:var(--text);text-align:left;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.manager-row strong,.manager-row small{display:block}.manager-row strong{font-size:15px;font-weight:820}.manager-row small{color:var(--muted);margin-top:3px;font-size:13px;font-weight:650}.manager-row em{color:var(--red);flex:none;font-size:13px;font-style:normal;font-weight:800}.object-list{gap:10px;display:grid}.object-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;padding:14px}.object-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.object-title{margin:0;font-size:17px;font-weight:780;line-height:1.2}.object-meta{color:var(--muted);margin:5px 0 0;font-size:13px}.issue-dates{color:var(--muted);gap:5px;margin-top:8px;font-size:13px;font-weight:750;line-height:1.35;display:grid}.issue-dates span{display:block}.status-pill{border-radius:999px;flex:none;min-height:30px;padding:6px 10px;font-size:12px;font-weight:800}.status-ok{background:var(--green-soft);color:var(--green)}.status-risk{background:var(--red-soft);color:var(--red)}.status-late{background:var(--yellow-soft);color:var(--yellow)}.status-empty{background:var(--gray-soft);color:#4b5563}.object-status-critical{background:var(--red);color:#fff}.object-status-risk{background:var(--red-soft);color:var(--red)}.object-status-watch{background:var(--yellow-soft);color:var(--yellow)}.object-status-norm{background:var(--green-soft);color:var(--green)}.status-reason-note{color:#6b7280;margin-top:4px;font-size:12px;font-weight:500}.hr-status-new{background:var(--red-soft);color:var(--red)}.hr-status-inWork,.hr-status-published,.hr-status-candidatesFound,.hr-status-candidatesSent{background:var(--yellow-soft);color:var(--yellow)}.hr-status-closed{background:var(--green-soft);color:var(--green)}.hr-status-notClosed{background:var(--gray-soft);color:#4b5563}.no-show-status-new,.no-show-status-repeated{background:var(--red-soft);color:var(--red)}.no-show-status-outflow_risk{background:var(--yellow-soft);color:var(--yellow)}.no-show-status-returned{background:var(--green-soft);color:var(--green)}.no-show-status-converted_to_outflow,.no-show-status-cancelled{background:var(--gray-soft);color:#4b5563}.need-status-new{background:var(--red-soft);color:var(--red)}.need-status-transferred_to_hr,.need-status-partially_closed{background:var(--yellow-soft);color:var(--yellow)}.need-status-closed{background:var(--green-soft);color:var(--green)}.need-status-cancelled{background:var(--gray-soft);color:#4b5563}.stat-strip{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px;margin-top:14px;display:grid}.mini-stat{background:var(--surface-muted);border-radius:14px;min-height:64px;padding:10px}.mini-stat.risk{background:var(--red-soft)}.mini-stat.risk strong{color:var(--red)}.mini-stat strong{font-size:20px;line-height:1;display:block}.mini-stat span{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.15;display:block}.card-actions{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin-top:14px;display:grid}.export-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.export-actions .secondary-button{flex:180px}.primary-button,.secondary-button,.danger-button{border-radius:15px;min-height:48px;padding:0 14px;font-size:15px;font-weight:800}.primary-button{background:var(--accent);color:#fff}.secondary-button{border:1px solid var(--line);background:var(--surface-muted);color:var(--text)}.danger-button{background:var(--red);color:#fff}.form-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:22px;padding:16px}.form-grid{gap:12px;display:grid}.field{gap:7px;display:grid}.field label,.field>span{color:var(--muted);font-size:13px;font-weight:750}.number-control{grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;display:grid}.number-control button{background:var(--surface-muted);width:44px;height:44px;color:var(--text);border-radius:14px;font-size:20px;font-weight:800}.number-control input,.field input,.field textarea,.field select{border:1px solid var(--line);width:100%;min-height:44px;color:var(--text);background:#fff;border-radius:14px;outline:none;padding:0 12px;font-size:16px}.number-control input{text-align:center;font-size:20px;font-weight:800}.field textarea{resize:vertical;min-height:88px;padding-top:12px}.checkbox-field{align-items:center;gap:10px;min-height:44px;padding-top:20px;display:flex}.field.checkbox-field input{width:18px;height:18px;min-height:18px;accent-color:var(--accent);padding:0}.inline-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.inline-actions.single{grid-template-columns:1fr;margin-top:12px}.warning{background:var(--yellow-soft);color:#7c4a03;border-radius:14px;padding:10px 12px;font-size:13px;font-weight:650;line-height:1.35}.access-state{background:var(--green-soft);color:#14532d;border:1px solid #15803d2e;border-radius:14px;gap:5px;padding:12px;line-height:1.35;display:grid}.access-state strong{font-size:14px}.access-state span{font-size:13px;font-weight:650}.bottom-bar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6f7fbf0;grid-template-columns:1fr 1fr;gap:8px;margin:16px -12px -92px;padding:12px;display:grid;position:sticky;bottom:0}.reason-grid{gap:8px;display:grid}.reason-button{border:1px solid var(--line);background:var(--surface-muted);min-height:48px;color:var(--text);text-align:left;border-radius:15px;padding:0 13px;font-size:15px;font-weight:760}.reason-button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.table-wrap{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:18px;overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:1040px}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:12px}.data-table th{color:var(--muted);font-size:12px;font-weight:800}.data-table td{font-size:14px;font-weight:650}.empty-state{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:18px;padding:24px 14px}@media (min-width:760px){.app-shell{padding:18px 18px 110px}.topbar{margin:-18px -18px 16px;padding:18px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.object-list,.request-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field.full,.warning.full{grid-column:1/-1}.bottom-bar{border-radius:22px 22px 0 0;width:min(100%,1080px);margin-left:auto;margin-right:auto}}
