.employee-modal.wide{width:min(1080px,100%)}
.form-section{padding:18px 0;border-bottom:1px solid #eeeae2}.form-section:first-of-type{padding-top:0}.form-section h3{font-size:13px;margin:0 0 16px;color:#28303a}.section-help{font-size:9px;color:#7a818b;margin:-8px 0 12px}
.document-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.upload-card{border:1px dashed #c9bea8;background:#fbfaf7;border-radius:7px;padding:12px;cursor:pointer}.upload-card span,.upload-card small{display:block}.upload-card span{font-size:9px;font-weight:600;margin-bottom:8px}.upload-card small{font-size:7px;color:#777;margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-card input{font-size:8px;width:100%}

/* Contracts Section */
.assignment-section{padding:26px 0 4px}
.assignment-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}
.assignment-heading h3{font-size:16px;margin:4px 0;color:#182230}
.assignment-heading p{font-size:9px;color:var(--muted);margin:0}
.allocation-totals{display:flex;gap:7px}
.allocation-total{min-width:110px;text-align:center;border:1px solid var(--line);border-radius:9px;padding:8px 12px}
.allocation-total strong,.allocation-total span{display:block}
.allocation-total strong{font-size:17px}
.allocation-total span{font-size:7px;color:var(--muted)}
.allocation-total.valid{background:#edf6f1;border-color:#c9e4d7;color:#286451}
.allocation-total.invalid{background:#fff2ef;border-color:#efcfcc;color:#9a403a}

/* Company Contract Picker List */
.company-pick-list{display:flex;gap:9px;overflow-x:auto;padding-bottom:7px}
.company-pick-list button{min-width:220px;background:#faf9f6;border:1px solid var(--line);border-radius:9px;padding:11px;display:flex;align-items:center;gap:10px;text-align:start;color:var(--ink);cursor:pointer;transition:all .15s}
.company-pick-list button.selected{background:#fffaf0;border-color:var(--gold);box-shadow:0 2px 8px rgba(185,154,93,.15)}
.company-pick-check{width:27px;height:27px;flex:none;border-radius:7px;background:#ece9e2;color:#747b84;display:grid;place-items:center;font-weight:700}
.company-pick-list .selected .company-pick-check{background:var(--gold);color:#fff}
.company-pick-list b,.company-pick-list small{display:block}
.company-pick-list b{font-size:9px}
.company-pick-list small{font-size:7px;color:var(--muted);margin-top:2px}

.assignment-empty{border:1px dashed #d3c9b6;border-radius:10px;background:#fbfaf7;margin-top:15px;padding:34px;text-align:center;color:var(--muted)}
.assignment-empty>span,.assignment-empty strong,.assignment-empty small{display:block}
.assignment-empty>span{font-size:27px;color:var(--gold)}
.assignment-empty strong{font-size:12px;color:var(--ink);margin:5px 0 3px}
.assignment-empty small{font-size:8px}

/* Contract Card */
.assignment-card{border:1px solid #dcd5c7;border-radius:14px;margin-top:18px;overflow:hidden;background:#fff;box-shadow:0 3px 12px rgba(15,23,42,.03)}
.assignment-card-head{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#f8f6f1;border-bottom:1px solid var(--line)}
.assignment-company-mark{width:42px;height:42px;border-radius:9px;background:var(--ink);color:var(--gold);display:grid;place-items:center;font-size:10px;font-weight:700}
.assignment-card-head>div:nth-child(2){flex:1}
.assignment-card-head h4{font-size:13px;margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.contract-tag{display:inline-block;padding:2px 7px;border-radius:5px;font-size:7.5px;font-weight:600;background:#ede7db;color:#6b5730}
.contract-status-pill{display:inline-block;padding:2px 8px;border-radius:12px;font-size:7px;font-weight:700}
.contract-status-pill.active{background:#e1f3eb;color:#1e6a4b}
.contract-status-pill.draft{background:#fdf2d8;color:#855c1b}
.contract-status-pill.expired{background:#fae5e3;color:#9b2c24}
.assignment-card-head p{font-size:8px;color:var(--muted);margin:3px 0 0}
.assignment-card-head button{border:0;background:transparent;color:#b43d35;font-size:8px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:5px}
.assignment-card-head button:hover{background:#feeceb}

.assignment-subtitle{display:flex;align-items:center;gap:9px;padding:18px 20px 12px}
.assignment-subtitle>span{width:26px;height:26px;border-radius:50%;background:#eee8da;color:#8d6f3b;display:grid;place-items:center;font-size:8px;font-weight:700}
.assignment-subtitle b,.assignment-subtitle small{display:block}
.assignment-subtitle b{font-size:10.5px;color:#1b2533}
.assignment-subtitle small{font-size:7.5px;color:var(--muted)}

.assignment-grid{padding:0 20px 20px;grid-template-columns:repeat(3,1fr);gap:14px}
.assignment-grid label>span,.access-grid label>span{display:block;font-size:8.5px;font-weight:600;margin-bottom:6px;color:#334155}
.assignment-grid input,.assignment-grid select,.access-grid input,.access-grid select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:8px 11px;background:#fff;outline:0;font-family:inherit;font-size:9px}
.assignment-grid input:focus,.assignment-grid select:focus,.access-grid input:focus,.access-grid select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(183,146,79,.12)}

/* Permissions Governance Box */
.permissions-governance-box{margin:0 20px 18px;background:#fbfaf7;border:1px solid #e7e2d6;border-radius:10px;padding:14px 16px}
.permissions-governance-box-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.permissions-governance-box-head h5{margin:0;font-size:9.5px;color:#202938;display:flex;align-items:center;gap:6px}
.permissions-count-badge{background:#ebdfc8;color:#735520;font-size:7px;font-weight:700;padding:2px 7px;border-radius:10px}
.permissions-chips-list{display:flex;flex-wrap:wrap;gap:6px}
.permission-chip{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid #dcd7cb;border-radius:6px;padding:4px 9px;font-size:8px;color:#263238}
.permission-chip .perm-check{color:#1e7e34;font-weight:700}
.permissions-empty-hint{font-size:8px;color:#8a939f;font-style:italic;margin:0}

.access-grid{padding:0 20px 22px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.access-grid label>small{display:block;font-size:7px;color:var(--muted);margin-top:5px}
.access-toggle{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:11px;background:#faf9f6;cursor:pointer}
.access-toggle input{width:18px;min-height:18px;cursor:pointer}
.access-toggle span{margin:0!important}
.access-toggle b,.access-toggle small{display:block}
.access-toggle b{font-size:9px;color:#1e293b}
.access-toggle small{font-size:7px;color:var(--muted);margin-top:2px}

@media(max-width:800px){
  .document-grid{grid-template-columns:1fr 1fr}
  .assignment-grid{grid-template-columns:1fr 1fr}
  .access-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .assignment-heading{align-items:flex-start;gap:10px}
  .assignment-grid{grid-template-columns:1fr}
  .allocation-total{min-width:82px}
}
