.foreign-crews-message{padding:1.25rem;color:var(--muted,#667085)}
.foreign-crews-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap;padding:.65rem;border:1px solid var(--line,#dce3e8);border-radius:14px;background:var(--card,#fff)}
.foreign-crews-period,.foreign-crews-month{display:flex;align-items:center;gap:.35rem}.foreign-crews-toolbar button,.foreign-crews-toolbar input{min-height:44px;border:1px solid #aab8c9;border-radius:8px;background:#fff;color:inherit;font:inherit}.foreign-crews-toolbar button{padding:.4rem .7rem;cursor:pointer}.foreign-crews-period button[aria-pressed="true"]{background:#087c78;border-color:#087c78;color:#fff}.foreign-crews-month input{width:145px;padding:.4rem .5rem}.foreign-crews-month input:disabled{opacity:.55}.foreign-crews-source{margin:.4rem .15rem .65rem;color:var(--muted,#667085);font-size:.76rem}
.foreign-crews-overview{display:grid;grid-template-columns:auto 1fr auto 1fr;align-items:baseline;gap:.35rem .65rem;margin-bottom:1rem;padding:.8rem 1rem;border:1px solid var(--line,#dce3e8);border-radius:14px;background:var(--card,#fff)}
.foreign-crews-overview strong{font-size:1.5rem;line-height:1}.foreign-crews-overview span{font-size:.82rem;color:var(--muted,#667085)}
.foreign-crews-card,.foreign-crews-unassigned{margin:0 0:.85rem;padding:1rem;border:1px solid var(--line,#dce3e8);border-radius:16px;background:var(--card,#fff);box-shadow:0 3px 14px #193b5010}
.foreign-crews-card header{display:flex;align-items:start;justify-content:space-between;gap:.6rem}.foreign-crews-card h2{font-size:1.08rem;line-height:1.35;margin:.18rem 0 .7rem}.foreign-crews-kicker{font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted,#667085)}
.foreign-crews-count{white-space:nowrap;font-size:.74rem;color:var(--muted,#667085);background:#f1f5f7;border-radius:999px;padding:.3rem .55rem}
.foreign-crews-members{display:flex;flex-wrap:wrap;gap:.4rem}.foreign-crews-member{display:inline-flex;flex-direction:column;gap:.12rem;max-width:100%;padding:.4rem .65rem;border-radius:10px;background:#edf5f6;font-size:.82rem;font-weight:600}.foreign-crews-member small{font-size:.7rem;font-weight:400;color:var(--muted,#667085)}
.foreign-crews-work{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .7rem;margin-top:.9rem}.foreign-crews-work h3{grid-column:1/-1;margin:0 0:.15rem;font-size:.77rem;color:var(--muted,#667085)}.foreign-crews-work p{font-size:.79rem;color:var(--muted,#667085);margin:.4rem 0}
.foreign-crews-assignment{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.3rem 0;padding:.62rem .68rem;text-align:left;border:1px solid var(--line,#dce3e8);border-radius:10px;background:#fff;color:inherit;cursor:pointer}.foreign-crews-assignment:hover,.foreign-crews-assignment:focus-visible{border-color:#4e9194;background:#f5fbfa}.foreign-crews-assignment span:first-child{min-width:0}.foreign-crews-assignment strong,.foreign-crews-assignment small{display:block;overflow-wrap:anywhere}.foreign-crews-assignment strong{font-size:.79rem}.foreign-crews-assignment small{margin-top:.15rem;color:var(--muted,#667085);font-size:.72rem}
.foreign-crews-assignment.is-target{border-color:#087f78;box-shadow:0 0 0 2px #087f78;background:#eef9f7}
.foreign-crews-unassigned h2{font-size:.92rem;margin:0 0:.7rem}
@media(max-width:620px){.foreign-crews-toolbar{display:grid;grid-template-columns:1fr;padding:.55rem}.foreign-crews-period{display:grid;grid-template-columns:1fr 1fr}.foreign-crews-month{display:grid;grid-template-columns:44px minmax(0,1fr) auto 44px}.foreign-crews-month input{width:100%;min-width:0}.foreign-crews-month button{padding:.35rem}.foreign-crews-overview{margin:0 0 .7rem;padding:.7rem}.foreign-crews-card,.foreign-crews-unassigned{padding:.8rem;margin-bottom:.65rem}.foreign-crews-work{grid-template-columns:1fr;gap:.35rem}.foreign-crews-card h2{font-size:.98rem}.foreign-crews-assignment{min-height:44px}}
.foreign-roster-section{display:grid;gap:.8rem;margin-bottom:1rem}.foreign-roster-heading{display:flex;align-items:start;justify-content:space-between;gap:.7rem}.foreign-roster-heading h2{margin:0;font-size:1.1rem}.foreign-roster-heading p{margin:.25rem 0 0;color:var(--muted,#667085);font-size:.82rem}
.foreign-roster-section button{min-height:44px;padding:.55rem .8rem;border:1px solid #9db2c1;border-radius:8px;background:#fff;color:inherit;font:inherit;cursor:pointer}.foreign-roster-section button:disabled{opacity:.55;cursor:default}
.foreign-roster-card,.foreign-roster-form,.foreign-roster-workers{padding:1rem;border:1px solid var(--line,#dce3e8);border-radius:12px;background:var(--card,#fff)}.foreign-roster-card header,.foreign-roster-workers li{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.foreign-roster-card h3,.foreign-roster-form h3{margin:0;font-size:1rem}.foreign-roster-card>small{display:block;margin:.3rem 0;color:var(--muted,#667085)}
.foreign-roster-members,.foreign-roster-history,.foreign-roster-workers ul{display:grid;gap:.4rem;list-style:none;padding:0;margin:.6rem 0}.foreign-roster-members li,.foreign-roster-history li{display:flex;justify-content:space-between;gap:.5rem;overflow-wrap:anywhere}.foreign-roster-history li{flex-wrap:wrap;border-top:1px solid var(--line,#dce3e8);padding-top:.45rem}.foreign-roster-card summary,.foreign-roster-workers summary{min-height:44px;padding:.6rem 0;cursor:pointer;font-weight:700}
.foreign-roster-form{display:grid;gap:.8rem}.foreign-roster-form label{display:grid;gap:.3rem;font-size:.82rem;font-weight:700}.foreign-roster-form input,.foreign-roster-form select{box-sizing:border-box;width:100%;min-height:44px;padding:.5rem;border:1px solid #9db2c1;border-radius:8px;background:#fff;color:inherit;font:inherit}.foreign-roster-member{display:grid;grid-template-columns:minmax(0,2fr) minmax(90px,1fr) auto;gap:.5rem;align-items:end}.foreign-roster-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.foreign-roster-error{margin:0;color:#a32f27}
@media(max-width:620px){.foreign-roster-heading,.foreign-roster-member{display:grid;grid-template-columns:1fr}.foreign-roster-form-actions button,.foreign-roster-heading button{width:100%}.foreign-roster-card,.foreign-roster-form,.foreign-roster-workers{padding:.8rem}}
