.selection-map-wrap{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.vessel-card label span small{margin-left:5px;color:var(--teal2);font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.data-freshness{display:flex;flex-direction:column;gap:3px;margin:3px 0 17px;padding:11px 12px;border:1px solid #cae2e4;border-radius:6px;background:#f2f9f9}.data-freshness b{font-size:10px;color:var(--navy)}.data-freshness span{font-size:9px;color:var(--muted)}
.profile-memory{grid-column:1/-1;display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:8px 18px;align-items:center;margin-top:-2px;padding:14px 16px;border:1px solid #cae2e4;border-radius:8px;background:#f2f9f9}.vessel-card .memory-choice{display:flex;flex-direction:row;align-items:center;gap:10px;cursor:pointer;color:var(--navy);font-size:12px;font-weight:800}.vessel-card .memory-choice input{width:18px;height:18px;min-width:18px;margin:0;padding:0;accent-color:var(--teal)}.profile-memory .text-button{justify-self:end;padding:5px 0;color:var(--teal2);font-size:11px;font-weight:800}.profile-memory small{grid-column:1/-1;color:var(--muted);font-size:9px;line-height:1.45}.profile-memory.saved{border-color:#9bd2ce;background:#edf9f7}.profile-memory.saved small{color:#08756f}.profile-memory.empty .text-button{opacity:.45;pointer-events:none}
@media(max-width:680px){.profile-memory{grid-template-columns:1fr}.profile-memory .text-button{justify-self:start}.profile-memory small{grid-column:1}}
.coverage-warning{margin:0 0 20px;padding:13px 16px;border:1px solid #efc9c5;border-left:5px solid #b42318;border-radius:7px;background:#fff5f4;color:#71322d;font-size:11px;line-height:1.55}.coverage-warning b{display:block;margin-bottom:2px;color:#8f1f17;font-size:12px}.coverage-warning.ok{border-color:#bfe0d7;border-left-color:var(--teal);background:#f0faf7;color:#37675f}.coverage-warning.ok b{color:var(--teal2)}
.selection-summary{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:12px;border:1px solid #cfe0e5;border-radius:8px;background:#fff}.selection-summary span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#eef6f7;color:#45606e;font-size:10px;font-weight:750}.selection-summary b{color:var(--navy);font-size:12px}.report-selection-summary{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 20px;padding:10px;border:1px solid var(--line);border-radius:6px;background:#f8fbfb;break-inside:avoid}.report-selection-summary span{padding:5px 8px;border-radius:999px;background:#eaf4f5;font-size:9px;color:#49636f}.report-selection-summary b{color:var(--navy)}.report-data-sources{margin-top:18px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:#f8fafb;font-size:9px;color:var(--muted);break-inside:avoid}.report-data-sources b{display:block;margin-bottom:4px;color:var(--navy)}
.selection-map-head{height:48px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:12px}
.selection-map-head span{color:var(--muted);font-size:10px}
.selection-map-head i,.coverage-key{display:inline-block;background:linear-gradient(90deg,#ef4444 0 16.66%,#22c55e 16.66% 33.32%,#1e3a8a 33.32% 49.98%,#8b4513 49.98% 66.64%,#f97316 66.64% 83.3%,#c026d3 83.3%);border:1px solid #748993}
.selection-map-head i{width:13px;height:10px;margin-right:4px}
.selection-map-wrap .map-mini{height:480px;border:0;border-radius:0}
.map-legend{height:41px;padding:0 14px;display:flex;align-items:center;gap:18px;font-size:10px;color:var(--muted);border-top:1px solid var(--line)}
.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{display:inline-block;width:22px;height:9px}.route-key{border-top:3px solid var(--navy)}
.head-actions{display:flex;gap:10px}.export-document{position:fixed;left:-12000px;top:0;width:1050px;margin:0;z-index:-1}
.band-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;padding:10px 14px;border-bottom:1px solid var(--line);background:#f7f9fa}.band-legend label{display:grid;grid-template-columns:16px 16px minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;font-size:10px;color:#526875;cursor:pointer}.band-legend label.band-all{grid-column:1/-1;padding-bottom:5px;border-bottom:1px solid #dce5e9;color:var(--navy);font-weight:750}.band-legend input{margin:0}.band-legend small{color:var(--muted);font-variant-numeric:tabular-nums}.band-swatch,.table-band{display:inline-block;background:var(--band-color);border:1px solid rgba(7,27,45,.28)}.band-swatch{width:14px;height:10px}.band-swatch.all{--band-color:#111}.table-band{width:9px;height:9px;margin-right:6px;border-radius:2px}
.report-coverage{margin:22px 0 28px;padding:15px;border:1px solid var(--line);border-radius:8px;background:#f9fbfc;break-inside:avoid}.report-coverage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}.report-coverage-head h3{margin:0 0 3px!important;border:0!important;padding:0!important}.report-coverage-head p{margin:0;color:var(--muted);font-size:10px}.report-coverage-head>b{color:var(--navy);font-size:12px;white-space:nowrap}.report-coverage svg{display:block;width:100%;height:auto}.coverage-sea{fill:#dceef4;stroke:#9fb8c3;stroke-width:1}.coverage-land{fill:#eef2ef;stroke:#8da3a8;stroke-width:.65;fill-rule:evenodd}.coverage-grid{stroke:#b9d0d8;stroke-width:.65}.coverage-route{fill:none;stroke:#071b2d;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.coverage-waypoints{fill:#fff;stroke:#071b2d;stroke-width:2}.report-map-legend{display:flex;flex-wrap:wrap;gap:7px 13px;margin-top:8px;color:#526875;font-size:9px}.report-map-legend span{display:flex;align-items:center;gap:4px}.report-map-legend i{display:inline-block;width:13px;height:9px;background:var(--band-color);border:1px solid rgba(7,27,45,.3)}.report-map-legend .route-legend i{height:0;width:18px;background:none;border:0;border-top:3px solid var(--navy)}
@media(max-width:850px){.selection-map-head{height:auto;padding:12px;align-items:flex-start;flex-direction:column;gap:5px}.head-actions{width:100%}.head-actions button{flex:1}}

/* Publication requirement levels */
.requirement-key{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:22px}
.requirement-key>div{background:#fff;border:1px solid var(--line);border-top:4px solid #7d8e99;border-radius:7px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}
.requirement-key .hardcopy{border-top-color:#b42318}.requirement-key .conditional{border-top-color:#d97706}.requirement-key .route{border-top-color:var(--teal)}
.requirement-key b{font-size:12px;color:var(--navy)}.requirement-key span{font-size:10px;line-height:1.4;color:var(--muted)}
.requirement-group.hardcopy .pub-group-head{background:#fff1f0;border-left:4px solid #b42318}.requirement-group.conditional .pub-group-head{background:#fff7e8;border-left:4px solid #d97706}.requirement-group.route .pub-group-head{background:#eaf8f7;border-left:4px solid var(--teal)}.requirement-group.review .pub-group-head{background:#eef3f5;border-left:4px solid #516b7a}
[hidden]{display:none!important}
.pub-groups{grid-template-columns:1fr}
.pub-group-head{border-left:5px solid #7d8e99}
.requirement-group.required .pub-group-head{border-left-color:#c44747;background:#fff4f3}
.requirement-group.route .pub-group-head{border-left-color:var(--teal);background:#effaf9}
.requirement-group.recommended .pub-group-head{border-left-color:var(--teal);background:#effaf9}
.requirement-group.review .pub-group-head{border-left-color:var(--amber);background:#fff8e9}
.pub-item h3{display:flex;align-items:flex-start;gap:8px}
.pub-family{flex:0 0 auto;border:1px solid #bfd0d7;border-radius:999px;padding:2px 6px;color:#496473;background:#f5f9fa;font:800 9px Inter,system-ui}
.pub-empty{padding:18px;color:var(--muted);font-size:12px}
.dpa-questions{margin:0 0 22px;border:1px solid #efd49a;border-left:5px solid var(--amber);border-radius:8px;background:#fffaf0;padding:16px 18px}.dpa-question-head{display:flex;flex-direction:column;gap:4px;margin-bottom:11px}.dpa-question-head b{font-size:14px;color:var(--navy)}.dpa-question-head span,.dpa-question span{font-size:11px;line-height:1.5;color:var(--muted)}.dpa-question{display:grid;grid-template-columns:minmax(150px,210px) 1fr;gap:14px;padding:10px 0;border-top:1px solid #f1e2bf}.dpa-question b{font-size:11px;color:#76531a}.legacy-publications{margin-top:14px;border:1px dashed #bdcbd1;border-radius:7px;background:#f8fafb}.legacy-publications summary{cursor:pointer;padding:13px 15px;font-weight:750;font-size:12px;color:var(--navy)}.legacy-publications .pub-group{margin:0 12px 12px}.report-questions{margin:18px 0;padding:14px 16px;border:1px solid #efd49a;border-left:4px solid var(--amber);border-radius:7px;background:#fffaf0;break-inside:avoid}.report-questions h3{margin:0 0 8px!important;padding:0!important;border:0!important}.report-question{display:grid;grid-template-columns:180px 1fr;gap:12px;padding:6px 0;border-top:1px solid #f1e2bf;font-size:10px}.report-question:first-of-type{border-top:0}.report-question b{color:#76531a}.report-question span{color:var(--muted)}
@media(max-width:850px){.requirement-key{grid-template-columns:1fr}}
@media(max-width:650px){.dpa-question,.report-question{grid-template-columns:1fr;gap:3px}}

/* Portable DPA review file */
.transfer-import{max-width:1000px;margin-top:18px;background:#eaf5f5;border:1px solid #c5dddd;border-left:5px solid var(--teal);border-radius:9px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.transfer-import h2{font:600 21px Georgia;margin:0 0 6px;color:var(--navy)}
.transfer-import p:not(.eyebrow){font-size:12px;max-width:650px}.transfer-import-actions{display:flex;flex-direction:column;align-items:stretch;gap:7px;min-width:210px}
.transfer-import-actions small{text-align:center;color:var(--muted);font-size:10px}
@media(max-width:850px){.transfer-import{align-items:stretch;flex-direction:column;padding:18px}.transfer-import-actions{min-width:0}.head-actions{flex-wrap:wrap}.head-actions button{min-width:180px}}

.dpa-review-bar{margin:-8px auto 20px;max-width:1050px;background:#eaf5f5;border:1px solid #c5dddd;border-left:5px solid var(--teal);border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:10px}
.dpa-review-bar[hidden]{display:none}.dpa-review-bar>div{margin-right:auto;display:flex;flex-direction:column;gap:3px}.dpa-review-bar b{font-size:13px;color:var(--navy)}.dpa-review-bar span{font-size:11px;color:var(--muted)}
@media(max-width:850px){.dpa-review-bar{align-items:stretch;flex-direction:column}.dpa-review-bar>div{margin-right:0}.dpa-review-bar button{width:100%}}

.inventory-upload{margin:16px 0;padding:14px;border:1px solid #cfe0e3;border-radius:8px;background:#f5fafb}.inventory-upload>b{display:block;color:var(--navy);font-size:12px}.inventory-upload p{margin:5px 0 9px;font-size:10px;line-height:1.45}.inventory-upload>small{display:block;margin-top:8px;color:var(--muted);font-size:9px;line-height:1.4}.inventory-file-state{display:flex;align-items:center;gap:8px;margin-top:8px;padding:7px 9px;background:#e5f5f2;border-radius:6px}.inventory-file-state span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--teal2);font-size:10px;font-weight:800}.inventory-file-state .text-button{margin-left:auto;flex:none;padding:0}.inventory-summary{display:flex;justify-content:space-between;gap:12px;padding:9px 15px;background:#eef8f5;border-bottom:1px solid #cfe8df;color:#36586a;font-size:11px}.inventory-summary b{max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--navy)}.inventory-badge{display:inline-flex;align-items:center;white-space:nowrap;padding:4px 7px;border-radius:999px;border:1px solid #ccd9df;background:#f1f5f6;color:#647985;font-size:9px;font-weight:850}.inventory-badge.existing{border-color:#9fd3b2;background:#e7f6ec;color:#17683a}.inventory-badge.unknown{border-color:#abcbd7;background:#eaf4f8;color:#315f73}.inventory-badge.renew{border-color:#efc97c;background:#fff6dc;color:#8b5a00}.inventory-badge.expired,.inventory-badge.missing{border-color:#e5abab;background:#fdecec;color:#9b3030}.inventory-badge.none{opacity:.72}.export-scope{display:flex;flex-direction:column;gap:4px;min-width:185px}.export-scope span{margin:0;color:#b9c8d1;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.export-scope select{height:42px;border:1px solid #577184;border-radius:6px;background:#102f47;color:#fff;padding:0 9px;font-size:11px}.export-scope select:disabled{opacity:.5}.report-inventory-summary{display:flex;flex-direction:column;gap:4px;margin:18px 0;padding:12px 14px;border:1px solid #cfe5df;border-left:4px solid var(--teal);background:#f2faf8;font-size:10px}.report-inventory-summary b{font-size:12px;color:var(--navy)}.report-inventory-summary span{color:#315b60;font-weight:700}.report-inventory-summary small{color:var(--muted)}
@media(max-width:850px){.inventory-summary{align-items:flex-start;flex-direction:column}.inventory-summary b{max-width:100%}.export-scope{width:100%}.export-scope select{width:100%}}
