.crew-flow{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.crew-flow span{background:#e9eff4;color:#536373;padding:8px 14px;border-radius:20px}.crew-flow .current{background:#087abd;color:white}.crew-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:20px 0}.crew-filters label{flex:1;min-width:160px}.crew-form{max-width:960px}.crew-form .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.crew-form label{display:block}.crew-form input,.crew-form select,.crew-form textarea{width:100%;box-sizing:border-box}.crew-form .crew-check{display:flex;gap:10px;align-items:start;margin:12px 0}.crew-form input[type=checkbox]{width:auto;margin-top:4px}.crew-form fieldset{border:1px solid #d8e2e9;border-radius:8px;margin:20px 0;padding:16px}.crew-types{display:flex;flex-wrap:wrap;gap:8px 20px}.crew-types label{min-width:180px}.crew-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.crew-message{padding:12px;background:#f1f6fa;border-radius:8px;margin:12px 0;white-space:pre-wrap}.crew-public{max-width:980px;margin:40px auto;padding:24px}.crew-public h1{color:#087abd}.crew-status{font-weight:600}.crew-pending{color:#9c5c00}.crew-reviewed{color:#167346}.crew-on_hold{color:#8b4055}.crew-form textarea{min-height:100px}.crew-table{overflow:auto}.crew-page-note{max-width:800px;color:#536373}

/* Match enrollment controls to the MCIP button and form system. */
.crew-actions{align-items:center}
.crew-actions button,.crew-actions a,.crew-filters button,.crew-table button,.crew-form button{font-family:inherit;font-size:14px;font-weight:700;line-height:1.25;border-radius:8px;padding:10px 14px;cursor:pointer;min-height:40px}
.crew-actions a{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #c8deeb;color:#0b4f78;text-decoration:none}
.crew-actions button:not(.primary),.crew-filters button,.crew-table button,.crew-form button:not(.primary){background:#fff;border:1px solid #c8deeb;color:#0b4f78}
.crew-filters button[type=submit]{background:#087abd;border-color:#087abd;color:#fff}
.crew-actions a:hover,.crew-actions button:not(.primary):hover,.crew-table button:hover,.crew-form button:not(.primary):hover,.crew-filters button[type=button]:hover{background:#eaf5fb}
.crew-actions .primary:hover,.crew-form .primary:hover,.crew-filters button[type=submit]:hover{background:#066ba5}
.crew-actions button:focus-visible,.crew-actions a:focus-visible,.crew-filters button:focus-visible,.crew-form button:focus-visible,.crew-table button:focus-visible{outline:3px solid #a7d7f2;outline-offset:2px}
.crew-form button:disabled{opacity:.65;cursor:wait}
.crew-filters label,.crew-form label{font-size:12px;font-weight:700;color:#304a60}
.crew-filters input,.crew-filters select,.crew-form input:not([type=checkbox]),.crew-form select,.crew-form textarea{display:block;width:100%;margin-top:7px;padding:10px 12px;border:1px solid #cad7e1;border-radius:8px;background:#fff;color:#10283e;font-family:inherit;font-size:14px;min-height:40px}
.crew-filters input:focus,.crew-filters select:focus,.crew-form input:focus,.crew-form select:focus,.crew-form textarea:focus{outline:2px solid #a7d7f2;border-color:#087abd}
@media(max-width:600px){.crew-actions button,.crew-actions a{flex:1 1 180px}.crew-filters button{flex:1 1 120px}}

.crew-vessel-experience{display:grid;gap:12px}.crew-vessel-entry{border:1px solid #dce6ed;border-radius:10px;padding:12px 16px;background:#f8fbfd}.crew-vessel-entry>.crew-check{margin:0;font-size:14px}.crew-vessel-detail{display:grid;grid-template-columns:minmax(180px,1fr) 2fr;gap:10px 20px;margin-top:12px;padding-top:12px;border-top:1px solid #dce6ed}.crew-vessel-detail[hidden]{display:none}.crew-vessel-detail>small{grid-column:1;font-size:11px;color:#66798c}.crew-vessel-detail>[data-month-fields]{grid-column:2;grid-row:1 / span 2;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;align-content:start}.crew-rank-selection option{padding:4px}.crew-seatime-table{background:#fff}.crew-seatime-table tfoot{background:#e4f2fb;color:#0b4f78}@media(max-width:650px){.crew-vessel-detail{grid-template-columns:1fr}.crew-vessel-detail>[data-month-fields]{grid-column:1;grid-row:auto}}

.crew-selected-ranks{grid-column:1;display:flex;flex-wrap:wrap;align-content:start;gap:8px}
.crew-rank-tag{display:inline-flex;align-items:center;gap:8px;background:#e4f2fb;border:1px solid #c8deeb;border-radius:18px;color:#0b4f78;padding:6px 10px;font-size:12px;font-weight:700}
.crew-form .crew-rank-tag button{display:inline-flex;align-items:center;justify-content:center;min-height:22px;width:22px;padding:0;border:0;border-radius:50%;background:transparent;color:#0b4f78;font-size:18px;line-height:1}
.crew-form .crew-rank-tag button:hover{background:#c8deeb}

.crew-enrollment-brand{display:flex;align-items:center;margin:0 0 20px;padding:16px 20px;background:#fff;border:1px solid #dce6ed;border-radius:12px;max-width:960px}.crew-enrollment-brand img{display:block;width:180px;height:auto;max-width:100%;object-fit:contain}

/* Compact crew registers with a single expanded assessment row. */
.crew-compact-table table{font-size:13px}
.crew-compact-table th,.crew-compact-table td{padding:9px 12px;vertical-align:middle}
.crew-compact-table button{padding:6px 10px;min-height:32px;font-size:12px}
.crew-expanded-row>td{padding:0!important;background:#f4f9fc}
.crew-inline-panel{padding:16px 20px;border-top:2px solid #087abd;white-space:normal}
.crew-inline-heading{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.crew-inline-heading strong{font-size:16px}.crew-inline-heading span{color:#536373;font-size:12px}
.crew-inline-heading button{margin-left:auto}
.crew-profile-details{border:1px solid #d8e2e9;border-radius:8px;margin:10px 0;background:white}
.crew-profile-details summary{cursor:pointer;padding:10px 12px;font-size:13px;font-weight:700;color:#0b4f78}
.crew-profile-details>p,.crew-profile-summary{padding:0 12px 10px}
.crew-profile-summary p{margin:8px 0}.crew-profile-summary h3{font-size:13px;margin:12px 0 6px}
.crew-inline-form{max-width:none}.crew-inline-form h3{font-size:15px;margin:14px 0 8px}
.crew-inline-form fieldset{margin:8px 0;padding:12px}
.crew-inline-form .form-grid{grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px 14px}
.crew-inline-form textarea{min-height:58px}.crew-inline-form .crew-actions{margin-top:10px}
@media(max-width:850px){.crew-inline-form .form-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}}
@media(max-width:550px){.crew-inline-form .form-grid{grid-template-columns:1fr}.crew-inline-panel{padding:12px}}


.crew-verification-group{border:1px solid #c8deeb;border-radius:8px;background:white;margin:10px 0}.crew-verification-group>summary{padding:12px;cursor:pointer;color:#0b4f78;font-weight:700}.crew-verification-group small{font-weight:400;margin-left:10px}.crew-checklist-item{border-top:1px solid #dce6ed;margin:0 12px}.crew-checklist-item>summary{padding:10px 0;cursor:pointer;font-size:13px}.crew-check-status{float:right;color:#536373;font-size:11px;margin-left:12px}.crew-verification-toggles{display:flex;flex-wrap:wrap;gap:20px}.crew-checklist-item fieldset{margin:0 0 10px}.crew-verification-group:has([data-field="status"] option[value="MISSING"]:checked){border-color:#bb6877}@media(max-width:600px){.crew-check-status{float:none;display:block;margin:4px 0}}

.manning-multiple details{border:1px solid #c8deeb;border-radius:8px;padding:10px;background:#fff}.manning-multiple summary{cursor:pointer;font-weight:600;color:#0b4f78}.manning-choice-list{max-height:220px;overflow-y:auto;padding:8px 0}.manning-choice-list label{display:flex;align-items:center;gap:8px;padding:6px}.manning-choice-list label[hidden]{display:none}.manning-choice-list input[type=checkbox]{width:auto}.manning-choice-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.manning-choice-tags button{font-size:12px;padding:5px 8px;min-height:28px}.manning-multiple input[type=search]{margin-top:10px}

.crew-form .form-grid>fieldset{grid-column:1/-1;min-width:0}
.crew-support-overdue{color:#b33b36;font-weight:700}
.crew-analytics-note{font-size:12px;color:#66798c;line-height:1.6}.crew-analytics-bars{max-height:380px;overflow:auto;display:grid;gap:12px;margin-top:18px}.crew-analytics-bars>div{display:grid;grid-template-columns:minmax(100px,1fr) minmax(70px,1.5fr) auto;align-items:center;gap:10px;font-size:12px}.crew-analytics-bars>div>div{height:13px;border-radius:5px;background:#edf3f7;overflow:hidden}.crew-analytics-bars i{display:block;height:100%;border-radius:5px}.crew-analytics-bars small{grid-column:1/-1;color:#66798c}.crew-analytics-grid .analytics-card{min-width:0}@media(max-width:600px){.crew-analytics-bars>div{grid-template-columns:1fr 1fr auto}}
/* Consistent typography for staff and public manning-agent onboarding. */
:is(#agentForm,#manningRegistration){font-family:Arial,sans-serif;font-size:14px;line-height:1.5}
:is(#agentForm,#manningRegistration) label,:is(#agentForm,#manningRegistration) .manning-multiple summary{font-family:inherit;font-size:12px;font-weight:700;line-height:1.5;color:#304a60}
:is(#agentForm,#manningRegistration) input,:is(#agentForm,#manningRegistration) select,:is(#agentForm,#manningRegistration) textarea{font-family:inherit;font-size:14px;font-weight:400;line-height:1.5}
:is(#agentForm,#manningRegistration) .manning-choice-list label{font-size:14px;font-weight:400;color:#10283e}
:is(#agentForm,#manningRegistration) legend{font-family:inherit;font-size:14px;font-weight:700;line-height:1.5;color:#304a60}
:is(#agentForm,#manningRegistration) p{font-family:inherit;font-size:13px;font-weight:400;line-height:1.5}
:is(#agentForm,#manningRegistration) .manning-choice-tags button{font-family:inherit;font-size:12px;font-weight:600;line-height:1.5}
.dashboard-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}.dashboard-service-card{background:#fff;border:1px solid #dce6ed;border-top:4px solid #087abd;border-radius:14px;padding:20px;min-width:0}.dashboard-service-card h2{font-size:21px;margin:0 0 7px;color:#0b4f78}.dashboard-service-card p{font-size:13px;color:#66798c;margin:0 0 18px}.dashboard-service-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.dashboard-service-metrics span{display:block;font-size:12px;color:#52697b}.dashboard-service-metrics b{display:block;font-size:28px;margin-top:5px;color:#10283e}.dashboard-service-tabs{display:flex;gap:10px;margin:24px 0 18px;flex-wrap:wrap}.dashboard-service-tabs button{font:700 14px Arial,sans-serif;padding:12px 20px;border:1px solid #c8deeb;border-radius:9px;background:#fff;color:#0b4f78;cursor:pointer}.dashboard-service-tabs button[aria-pressed=true]{background:#087abd;color:#fff;border-color:#087abd}#dashboardInspection[hidden],#dashboardCrewing[hidden]{display:none!important}@media(max-width:900px){.dashboard-services{grid-template-columns:1fr}}
.crew-file-modal{width:min(1040px,95vw);max-height:90vh;overflow:auto}.crew-document-hash{display:block;overflow-wrap:anywhere;font-family:monospace;font-size:11px}

/* Make blocking document-readiness issues unmistakable in operational workflows. */
.crew-readiness-warning{border:2px solid #b42318;background:#fff7f6}.crew-readiness-warning>summary{color:#9f1c13}.crew-readiness-alert{margin:10px 12px;padding:12px 14px;border-left:4px solid #b42318;background:#fdecea;color:#7a1710;border-radius:6px}.crew-readiness-fail td{background:#fff0ee;color:#8d1b13;font-weight:700}.crew-readiness-fail td:first-child{border-left:4px solid #b42318}.crew-readiness-ready>summary{color:#167346}

/* Vacancy sourcing: dense Pool list for high-volume crew review. */
.pool-candidate-row td{padding-top:8px!important;padding-bottom:8px!important;vertical-align:middle}.pool-candidate-name{font-size:15px;font-weight:700;line-height:1.2}.pool-candidate-email{font-size:12px;line-height:1.2;color:#40566b}

/* Consistent register typography across Select sourcing tables. */
.crew-register-name{font-size:15px;font-weight:700;line-height:1.25}.crew-register-rank{font-size:14px;font-weight:700;line-height:1.25}.crew-register-secondary{font-size:12px;line-height:1.25;color:#40566b}

/* Line-up operational readiness summary */
.crew-lineup-readiness{margin:12px 0;padding:12px 14px;border:1px solid #cbd9e5;border-radius:10px;background:#f8fbfd}.crew-lineup-readiness h3{margin:0 0 6px}.crew-lineup-readiness p{margin:4px 0 10px}.crew-lineup-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:6px 14px}.crew-lineup-status-grid>div{padding:5px 0}.crew-lineup-warn{font-weight:600}

/* Compact metrics inside Ready Crew experience disclosure */
.crew-experience-metrics,.crew-experience-metrics b{font-size:13px!important;line-height:1.45!important}.crew-experience-metrics b{font-weight:700!important;display:inline!important}


/* Public seafarer registration visual standard. */
.crew-public{max-width:980px;margin:28px auto 48px;padding:24px 28px;font-family:Arial,sans-serif;font-size:14px;line-height:1.5;color:#10283e}
.crew-public h1{margin:14px 0 8px;font-family:inherit;font-size:30px;line-height:1.15;font-weight:700;color:#087abd}
.crew-public>p{margin:0 0 18px;font-family:inherit;font-size:14px;line-height:1.55}
.crew-public .crew-enrollment-brand{margin-bottom:16px;padding:12px 18px;min-height:76px}
.crew-public .crew-enrollment-brand img{width:150px}
.crew-public .crew-form{max-width:none}
.crew-public .crew-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px 16px;align-items:end}
.crew-public .crew-form label{font-family:inherit;font-size:12px;font-weight:700;line-height:1.35;color:#304a60}
.crew-public .crew-form input:not([type=checkbox]),.crew-public .crew-form select,.crew-public .crew-form textarea{font-family:inherit;font-size:14px;font-weight:400;line-height:1.4;min-height:42px}
.crew-public .crew-form fieldset{margin:22px 0;padding:16px 18px}
.crew-public .crew-form legend{font-family:inherit;font-size:16px;font-weight:700;line-height:1.3;color:#10283e;padding:0 6px}
.crew-public .crew-page-note{font-family:inherit;font-size:13px;line-height:1.5;color:#536373}
.crew-public>div.crew-page-note{max-width:none;margin:14px 0 20px;padding:12px 14px;border-left:4px solid #087abd;border-radius:6px;background:#f1f7fb}
.crew-public .crew-vessel-entry>.crew-check{font-family:inherit;font-size:14px;font-weight:700;color:#10283e}
.crew-public .crew-check{font-family:inherit;line-height:1.45}
.crew-public .crew-actions button{font-family:inherit;font-size:14px}
@media(max-width:800px){.crew-public .crew-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.crew-public{margin:12px auto 30px;padding:16px}.crew-public h1{font-size:25px}.crew-public .crew-form .form-grid{grid-template-columns:1fr}.crew-public .crew-enrollment-brand img{width:132px}}
