:root { font-family: Inter, ui-sans-serif, system-ui; color: #17231f; background: #edf1ef; }
* { box-sizing: border-box; }
body { margin: 0; display: grid; grid-template-columns: 240px minmax(0, 1fr); }
aside { position: fixed; inset: 0 auto 0 0; width: 240px; min-height: 0; overflow: hidden; background: #10261f; color: #eaf4ef; padding: 24px; display: flex; flex-direction: column; }
.brand { display: flex; gap: 12px; align-items: center; margin-bottom: 30px; }
.brand > b { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: #c99642; color: #17231f; }
.brand strong, .brand small { display: block; }
.brand small { color: #9fb5aa; }
nav { display: grid; gap: 6px; }
aside nav { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; touch-action: pan-y; padding-right: 5px; scrollbar-width: thin; scrollbar-color: #58756a transparent; }
aside nav::-webkit-scrollbar { width: 6px; }
aside nav::-webkit-scrollbar-thumb { border-radius: 999px; background: #58756a; }
nav a { color: #c8d8d0; text-decoration: none; padding: 10px; border-radius: 8px; }
nav a:hover { background: #1d3a31; color: white; }
aside footer { flex: 0 0 auto; margin-top: 14px; color: #7f998d; font-size: 12px; }
main { grid-column: 2; width: calc(100% - 40px); min-width: 0; margin: 0 auto 50px; }
header { display: flex; justify-content: space-between; align-items: center; padding: 28px 0; }
header p, .section-title p, .hero p { margin: 0; color: #6b7c74; text-transform: uppercase; letter-spacing: .1em; font-size: 11px; font-weight: 800; }
h1 { margin: 5px 0; font-size: 28px; }
.sync { background: white; border: 1px solid #d7e0db; padding: 12px 16px; border-radius: 12px; }
.sync i { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #24a66d; margin-right: 7px; }
.sync small { display: block; color: #718178; margin-top: 4px; }
.hero { padding: 32px; border-radius: 18px; background: linear-gradient(125deg, #193d31, #2b594a); color: white; }
.hero h2 { font-size: 34px; margin: 7px 0 12px; }
.hero span { color: #f0cf8d; }
.eoc-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.eoc-links a{padding:9px 12px;border:1px solid #ffffff42;border-radius:999px;color:#fff;background:#ffffff12;font-size:11px;font-weight:900;text-decoration:none}.eoc-links a:hover{background:#ffffff24}
.eoc-open-balances{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.eoc-open-box{display:block;padding:20px;border:2px solid #bfd3c8;border-radius:13px;background:#f6fbf8;color:#17372c;text-decoration:none}.eoc-open-box:hover{border-color:#2b8064;box-shadow:0 4px 14px #17372c12}.eoc-open-box>small{display:block;color:#176c53;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.eoc-open-box>strong{display:block;margin:5px 0 2px;font-size:30px}.eoc-open-box>span{display:block;color:#5b7067;font-size:12px;font-weight:800}.eoc-open-box>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.eoc-open-box b{padding:5px 8px;border-radius:999px;font-size:9px;text-transform:uppercase}.eoc-open-box b.past-due{color:#982f2f;background:#fde7e5}.eoc-open-box b.due-today{color:#805613;background:#fff0cf}.eoc-open-box b.future-due{color:#285e8d;background:#e9f2fb}
.eoc-due-dates{margin:14px 0;padding:18px;border:1px solid #d8e1dc;border-radius:14px;background:#fff;scroll-margin-top:15px}.eoc-due-dates>.subsection-heading{padding:0 0 14px}.eoc-due-dates>.subsection-heading h2{margin:0;color:#17372c;font-family:Georgia,serif}.eoc-due-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.eoc-due-columns>article{padding:15px;border:1px solid #dce4df;border-radius:12px;background:#f8fbf9}.eoc-account-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:11px}.eoc-account-heading small{color:#176c53;font-size:9px;font-weight:900;letter-spacing:.08em}.eoc-account-heading h3{margin:3px 0;color:#17372c}.eoc-account-heading a{color:#176c53;font-size:11px;font-weight:900}.eoc-due-list{display:grid;gap:8px}.eoc-due-item{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:11px;border:1px solid #dce4df;border-left:5px solid #3978c8;border-radius:9px;background:#fff}.eoc-due-item.past-due{border-left-color:#b84141}.eoc-due-item.due-today{border-left-color:#c38a2d}.eoc-due-item.future-due{border-left-color:#3978c8}.eoc-due-item h4,.eoc-due-item p{margin:0}.eoc-due-item h4{font-size:13px;color:#17372c}.eoc-due-item p{margin-top:4px;color:#61726a;font-size:11px}.eoc-due-item small{display:block;margin-top:5px;color:#52675e;font-weight:800}.due-badge{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap;text-transform:uppercase}.due-badge.past-due{color:#982f2f;background:#fde7e5}.due-badge.due-today{color:#805613;background:#fff0cf}.due-badge.future-due{color:#285e8d;background:#e9f2fb}
.metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 14px 0; }
.metrics article, .panel { background: white; border: 1px solid #d8e1dc; border-radius: 14px; }
.panel, #logs { min-width: 0; max-width: 100%; }
.metrics article { padding: 16px; }
.metrics small, .metrics strong, .metrics span { display: block; }
.metrics strong { font-size: 24px; margin: 5px 0; }
.metrics span { color: #6e7d76; font-size: 12px; }
.panel { padding: 22px; margin: 14px 0; scroll-margin-top: 15px; }
.section-title { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; }
.section-title h2 { margin: 4px 0; font-size: 23px; }
.section-title button { background: #a9742d; color: white; border: 0; border-radius: 9px; padding: 10px 14px; font-weight: 700; }
.section-title button:disabled { background: #9cafa5; }
.readiness { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.checklist-status{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:14px;padding:16px 18px;border:2px solid;border-radius:12px}.checklist-status>div{display:grid;gap:4px}.checklist-status small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.checklist-status strong{font-size:19px}.checklist-status span{font-size:12px}.checklist-status.green{background:#e9f7ef;border-color:#3e9b69;color:#195c3b}.checklist-status.yellow{background:#fff7dc;border-color:#d0a42c;color:#785b08}.checklist-status.red{background:#fdeaea;border-color:#c94c4c;color:#842626}
.readiness button, .cards article, .row, .tasks button, .docs a { border: 1px solid #dce4df; border-radius: 11px; padding: 14px; }
.readiness button{color:inherit;background:#fff;text-align:left;cursor:pointer}.readiness button:hover,.readiness button:focus{border-color:#3e9b69;box-shadow:0 0 0 2px #dcefe4}.readiness b, .readiness span { display: block; }.readiness small{display:block;margin-top:8px;color:#6d8178;font-size:10px;font-weight:700}
.readiness span { margin-top: 7px; font-size: 12px; font-weight: 800; }
.warn { color: #a16a22; } .ok { color: #217654; }
.legend { display: flex; gap: 16px; color: #61726a; font-size: 12px; }
.legend span::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 6px; background: #3978c8; }
.legend span:last-child::before { background: #2b936a; }
.calendar-list { display: grid; gap: 7px; }
.calendar-event { display: grid; grid-template-columns: 130px 1fr 110px 120px; gap: 12px; align-items: center; padding: 12px 14px; border: 1px solid #dce4df; border-left: 4px solid #3978c8; border-radius: 10px; color: #17372c; text-decoration: none; }
.calendar-event.icrm { border-left-color: #2b936a; }
.calendar-event small { color: #718078; }
.empty { padding: 30px; text-align: center; color: #718078; border: 1px dashed #cad8d0; border-radius: 10px; }
.cards { display: grid; gap: 8px; }
.cards article { display: grid; grid-template-columns: 70px 80px 1fr 150px; align-items: center; }
.cards h3, .cards p { margin: 0; }
.cards p { color: #718078; margin-top: 4px; }
.cards > article > span { color: #9a681e; font-weight: 800; }
.mini { grid-template-columns: repeat(5, 1fr); }
.row { display: grid; grid-template-columns: 1.2fr 1fr 1.5fr .6fr; gap: 12px; align-items: center; margin: 8px 0; }
.row span { color: #61726a; }
.workorder-reconciliation{margin:20px 0;padding:18px;border:1px solid #dce4df;border-radius:14px;background:#f8fbf9}.workorder-reconciliation .subsection-heading{padding:0 0 14px}.workorder-match-list{display:grid;gap:9px;margin-top:14px}.workorder-match-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid #dce4df;border-left:5px solid #8ba095;border-radius:11px;background:#fff}.workorder-match-card.open{border-left-color:#b84141}.workorder-match-card.review,.workorder-match-card.unmatched{border-left-color:#d9ae63}.workorder-match-card.matched,.workorder-match-card.no-invoice{border-left-color:#247858}.workorder-match-card h4,.workorder-match-card p{margin:0}.workorder-match-card h4{margin-top:7px;color:#17372c}.workorder-match-card p{margin-top:5px;color:#61726a;font-size:12px}.workorder-match-card small{display:block;margin-top:6px;color:#7b8c84;font-size:10px}.match-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;text-transform:uppercase}.match-status.open{color:#9b3d3a;background:#fde7e5}.match-status.review,.match-status.unmatched{color:#8f6115;background:#fff0cf}.match-status.matched,.match-status.no-invoice{color:#176d50;background:#e4f5ed}.workorder-match-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.workorder-match-actions a,.workorder-match-actions button{padding:8px 10px;border:0;border-radius:8px;color:#176c53;background:#edf5f1;font:800 11px inherit;white-space:nowrap;cursor:pointer}.no-invoice-form{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px;border-radius:9px;background:#f1f7f4}.no-invoice-form[hidden]{display:none}.no-invoice-form label{display:grid;gap:5px;color:#385e50;font-size:10px;font-weight:800}.no-invoice-form select,.no-invoice-form input,.no-invoice-form textarea{width:100%;box-sizing:border-box;padding:9px;border:1px solid #c8d8d0;border-radius:7px;background:#fff;font:12px inherit}.no-invoice-form textarea{min-height:38px;resize:vertical}.no-invoice-form>div{grid-column:1/-1;display:flex;gap:8px}.no-invoice-form button{padding:9px 12px;border:0;border-radius:7px;color:#fff;background:#176c53;font-weight:800;cursor:pointer}.no-invoice-form button.secondary{color:#385e50;background:#dfeae5}.no-invoice-form>p{grid-column:1/-1;color:#8f6115;font-weight:700}
.log-entry-form{margin:18px 0;padding:18px;border:1px solid #dce4df;border-radius:12px;background:#f8fbf9;scroll-margin-top:14px}.log-entry-form.is-editing{border:3px solid #d9ae63;box-shadow:0 0 0 4px rgba(217,174,99,.18)}.log-edit-banner{margin:0 0 16px;padding:11px 13px;border-radius:9px;background:#fff2cd;color:#65480f;font-weight:900}.log-form-heading{display:flex;justify-content:space-between;gap:18px;align-items:start;margin-bottom:16px}.log-form-heading h3,.log-form-heading p{margin:0}.log-form-heading p{margin-top:5px;color:#61726a;font-size:13px}.log-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.log-entry-form label{font-size:12px;font-weight:800;color:#49665b}.log-entry-form input,.log-entry-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #c9d8d0;border-radius:9px;padding:10px;background:white;font:inherit;color:#17372c}.log-entry-form textarea{resize:vertical;min-height:43px}.log-entry-form button{border:0;border-radius:9px;padding:12px 16px;background:#247858;color:white;font-weight:800;white-space:nowrap}.log-entry-form button:disabled{opacity:.6}.log-wide{grid-column:span 2}.logbook-table-wrap{width:100%;max-width:100%;overflow:auto;max-height:650px;border:1px solid #dce4df;border-radius:12px}.logbook-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.logbook-table th,.logbook-table td{min-width:130px;max-width:260px;padding:11px;border-right:1px solid #dce4df;border-bottom:1px solid #dce4df;text-align:left;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere}.logbook-table th{background:#163d32;color:white;font-size:11px}.logbook-table thead th{position:sticky;top:0;z-index:2}.logbook-table th:first-child,.logbook-table td:first-child{position:sticky;left:0;z-index:1;min-width:105px}.logbook-table tbody td:first-child{background:#fff}.logbook-table thead th:first-child{z-index:3}.logbook-table tfoot th,.logbook-table tfoot td{background:#edf5f1;color:#17372c;font-weight:800}.logbook-table .log-duration{font-weight:800;color:#176c53}.legacy-log{opacity:.72}
.tasks { display: block; }
.task-card{border:1px solid #dce4df;border-radius:11px;padding:10px;background:white}.task-card button{width:100%;border:0;padding:4px;text-align:left;background:white;display:flex;gap:10px;align-items:center}.task-card>a{display:block;margin:8px 4px 2px;color:#176c53;font-weight:800;font-size:12px}.task-card span small{display:block;margin-top:4px;color:#718078}.task-card.done{opacity:.55}
.task-project{border:1px solid #c8ddd4;border-radius:16px;background:#f7fbf9;padding:18px;margin-bottom:18px}.task-project>header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.task-project>header small,.task-subhead small,.task-phase-title small{color:#247858;font-weight:800;letter-spacing:.1em}.task-project h3,.task-subhead h3{margin:4px 0 5px}.task-project header p{margin:0;color:#65756d;max-width:720px}.task-project-count{min-width:110px;text-align:center;border-radius:12px;background:#e7f3ed;padding:10px}.task-project-count strong{display:block;font-size:25px;color:#176c53}.task-project-count span,.task-project-count small{display:block}.task-project-count small{color:#65756d;margin-top:3px}.task-phase-group{border-top:1px solid #d7e5df;padding:16px 0 4px}.task-phase-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:10px}.task-phase-title h4{font:22px Georgia,serif;margin:3px 0;color:#173d31}.task-phase-title>span{font-size:12px;color:#65756d}.task-phase-grid,.task-standalone{display:grid;grid-template-columns:1fr 1fr;gap:9px}.task-standalone{margin-top:20px}.task-subhead{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.task-subhead b{background:#e7f3ed;border-radius:999px;padding:7px 11px;color:#176c53}
.tasks button { text-align: left; background: white; display: flex; gap: 10px; align-items: center; }
.tasks i { width: 16px; height: 16px; border: 2px solid #8ba095; border-radius: 4px; }
.tasks span { flex: 1; }
.tasks .done { opacity: .55; }
.tasks .done i { background: #247858; }
.docs { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.docs a { display: flex; justify-content: space-between; color: #1b4b3b; text-decoration: none; }
.docs span { color: #78877f; font-size: 12px; }
.document-folder{border:1px solid #dce4df;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}.folder-head{display:flex;justify-content:space-between;gap:8px}.folder-head h3{font-size:17px;margin:3px 0}.folder-head small{font-size:9px;color:#718078;font-weight:800}.folder-head>b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e8f3ed;color:#176c53}.folder-files{display:grid;gap:6px;min-height:55px}.folder-files a{display:flex;gap:8px;padding:8px;border:1px solid #e1e8e4;border-radius:7px}.folder-files a span{flex:1;overflow-wrap:anywhere;color:#17372c}.folder-empty{color:#718078;font-size:12px;padding:8px 0}.upload-picker{display:block;padding:9px;border:1px dashed #9eb5aa;border-radius:8px;color:#49665b;font-weight:800;font-size:12px}.upload-picker input{display:block;width:100%;margin-top:7px;font-size:11px}.document-folder button{border:0;border-radius:8px;padding:9px;background:#247858;color:white;font-weight:800}.document-folder button:disabled{opacity:.6}.precision-link{padding:9px!important;text-align:center;background:#edf6f1;color:#176c53!important;font-weight:800}
.navigation-columns{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.notice-list{display:grid;gap:9px}.nav-notice{border:1px solid #dce4df;border-left:5px solid #247858;border-radius:10px;padding:14px}.nav-notice.cancelled{border-left-color:#a33}.nav-notice h4{margin:5px 0}.nav-notice p{white-space:pre-wrap;overflow-wrap:anywhere;color:#61726a}.nav-notice>a,.source-links a{color:#176c53;font-weight:800}.aid-match{display:grid;gap:3px;background:#edf6f1;border-radius:8px;padding:10px;margin:8px 0}.source-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px}
@media (max-width: 900px) { body { display: block; } aside { position: static; width: auto; overflow: visible; } aside nav { flex: none; grid-template-columns: 1fr 1fr; overflow: visible; padding-right: 0; } main { width: min(100% - 24px, 1180px); } .metrics, .readiness, .docs { grid-template-columns: 1fr 1fr; } .cards article, .row,.navigation-columns,.eoc-due-columns,.eoc-open-balances { grid-template-columns: 1fr; } .log-form-grid{grid-template-columns:1fr 1fr}.task-phase-grid,.task-standalone{grid-template-columns:1fr}.task-project>header{flex-direction:column}.task-project-count{width:100%} }
@media(max-width:700px){.workorder-match-card{grid-template-columns:1fr}.workorder-match-actions{justify-content:flex-start}.no-invoice-form{grid-template-columns:1fr}}
@media(max-width:620px){.log-form-heading{display:grid}.log-form-grid{grid-template-columns:1fr}.log-wide{grid-column:auto}.log-form-heading button{width:100%}}
.vessel-log-list{display:grid;gap:14px}.vessel-log-card{overflow:hidden;border:1px solid #d8e1dc;border-radius:14px;background:#fff}.vessel-log-card>header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 20px;background:#173d32;color:#fff}.vessel-log-card>header p,.vessel-log-card>header h3{margin:0}.vessel-log-card>header p{margin-bottom:4px;color:#b8d0c5;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.vessel-log-card>header h3{font-size:21px}.vessel-log-card>header>strong{padding:8px 11px;border-radius:999px;background:#d9ae63;color:#17372c;white-space:nowrap}.vessel-log-card>section{padding:16px 20px;border-top:1px solid #e1e8e4}.vessel-log-card>section h4{margin:0 0 11px;color:#49665b;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.log-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.log-detail{min-width:0;padding:11px 12px;border-radius:9px;background:#f4f8f6}.log-detail small,.log-detail span{display:block}.log-detail small{margin-bottom:5px;color:#698078;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.log-detail span{white-space:pre-wrap;overflow-wrap:anywhere}.log-detail-wide{grid-column:span 2}.log-detail.incident{background:#fff0f0;border-left:4px solid #b84141}@media(max-width:900px){.log-detail-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.vessel-log-card>header{display:grid}.log-detail-grid{grid-template-columns:1fr}.log-detail-wide{grid-column:auto}}
.log-area-picker{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:13px;border:1px solid #c9d8d0;border-radius:10px}.log-area-picker legend{padding:0 6px;color:#49665b;font-size:12px;font-weight:800}.log-area-option{display:flex;gap:11px;align-items:center;padding:13px;border:1px solid #d5e1db;border-radius:9px;background:#fff;cursor:pointer}.log-area-option input{flex:0 0 20px;width:20px;height:20px;margin:0;accent-color:#247858}.log-area-option span,.log-area-option b,.log-area-option small{display:block}.log-area-option span{flex:1}.log-area-option small{margin-top:4px;color:#61726a;font-weight:600}.log-area-option:has(input:checked){border-color:#247858;background:#edf7f2;box-shadow:0 0 0 1px #247858 inset}@media(max-width:620px){.log-area-picker{grid-template-columns:1fr}}
.log-movement-picker{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:13px;border:1px solid #c9d8d0;border-radius:10px}.log-movement-picker legend{padding:0 6px;color:#49665b;font-size:12px;font-weight:800}.log-movement-option{display:flex;gap:11px;align-items:center;padding:13px;border:1px solid #d5e1db;border-radius:9px;background:#fff;cursor:pointer}.log-movement-option input{flex:0 0 20px;width:20px;height:20px;margin:0;accent-color:#247858}.log-movement-option span,.log-movement-option b,.log-movement-option small{display:block}.log-movement-option span{flex:1}.log-movement-option small{margin-top:4px;color:#61726a;font-weight:600}.log-movement-option:has(input:checked){border-color:#247858;background:#edf7f2;box-shadow:0 0 0 1px #247858 inset}@media(max-width:900px){.log-movement-picker{grid-column:1/-1}}@media(max-width:620px){.log-movement-picker{grid-template-columns:1fr}}
.gps-picker{grid-column:1/-1;margin:0;padding:13px;border:1px solid #c9d8d0;border-radius:10px}.gps-picker legend{padding:0 6px;color:#49665b;font-size:12px;font-weight:800}.gps-actions{display:flex;align-items:center;gap:12px;margin-bottom:12px}.gps-actions span{color:#61726a;font-size:12px;font-weight:700}.gps-actions a,.gps-map-link{color:#176c53;font-size:12px;font-weight:800}.gps-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gps-captured{display:flex;flex-direction:column;justify-content:center;padding:10px;border-radius:9px;background:#eef5f1}.gps-captured small{margin-bottom:5px;color:#698078;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.gps-captured strong{overflow-wrap:anywhere}@media(max-width:900px){.gps-fields{grid-template-columns:1fr 1fr}}@media(max-width:620px){.gps-actions{align-items:stretch;flex-direction:column}.gps-actions button{width:100%}.gps-fields{grid-template-columns:1fr}}
.log-form-actions,.log-card-actions{display:flex;gap:9px;align-items:center}.log-entry-form button.secondary{background:#e4ece8;color:#294d41}.log-card-actions>strong{padding:8px 11px;border-radius:999px;background:#d9ae63;color:#17372c;white-space:nowrap}.log-card-actions>.edit-log-entry{position:relative;z-index:1;min-height:44px;display:grid;place-items:center;border:1px solid #8fb3a4;border-radius:8px;padding:8px 11px;background:transparent;color:#fff;font-weight:800;text-decoration:none;cursor:pointer;touch-action:manipulation;-webkit-appearance:none;-webkit-tap-highlight-color:rgba(255,255,255,.16)}.log-card-actions>.edit-log-entry:hover,.log-card-actions>.edit-log-entry:focus{background:#285648}.log-audit{background:#f8fbf9}.audit-empty{margin:0;color:#61726a}.audit-list{display:grid;gap:9px}.audit-list>article{padding:12px;border:1px solid #dbe5e0;border-radius:9px;background:#fff}.audit-list>article>div{display:flex;justify-content:space-between;gap:12px}.audit-list>article>div span{color:#61726a;font-size:12px}.audit-list p{margin:7px 0 0;color:#61726a}.audit-list ul{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}.audit-list li{display:grid;grid-template-columns:190px 1fr;gap:10px;padding-top:7px;border-top:1px solid #edf1ef}.audit-list li span{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:620px){.log-form-actions,.log-card-actions{align-items:stretch;flex-direction:column}.log-form-actions button,.log-card-actions>.edit-log-entry{width:100%}.audit-list>article>div,.audit-list li{display:grid;grid-template-columns:1fr}}
.log-area-heading{margin-top:15px!important}.log-area-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}.log-area-summary article{display:flex;gap:11px;align-items:center;padding:13px;border:1px solid #d5e1db;border-radius:9px;background:#f8fbf9;color:#61726a}.log-area-summary article.selected{border-color:#247858;background:#edf7f2;color:#17372c}.log-area-mark{display:grid!important;place-items:center;flex:0 0 22px;width:22px;height:22px;border:2px solid #9aaba4;border-radius:5px;color:#7a8a83;font-weight:900}.log-area-summary article.selected .log-area-mark{border-color:#247858;background:#247858;color:#fff}.log-area-summary span,.log-area-summary b,.log-area-summary small{display:block}.log-area-summary span{min-width:0}.log-area-summary small{margin-top:4px;color:#61726a;font-weight:600}.log-area-missing{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:10px;padding:11px 13px;border-radius:9px;background:#fff5df;border-left:4px solid #d39a2f}.log-area-missing p{margin:0;color:#66521e}.log-area-missing button{border:0;border-radius:8px;padding:9px 12px;background:#247858;color:#fff;font-weight:800;white-space:nowrap;cursor:pointer}@media(max-width:620px){.log-area-summary{grid-template-columns:1fr}.log-area-missing{display:grid}.log-area-missing button{width:100%}}
.engine-hours-picker{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr .8fr;gap:10px;margin:0;padding:13px;border:1px solid #c9d8d0;border-radius:10px}.engine-hours-picker legend{padding:0 6px;color:#49665b;font-size:12px;font-weight:800}.engine-hour-option{display:grid;gap:10px;padding:13px;border:1px solid #d5e1db;border-radius:9px;background:#fff}.engine-hour-option>span:first-child{display:flex;align-items:center;gap:9px}.engine-hour-option input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:#247858}.engine-hour-option input[type=number]{margin-top:7px}.engine-hour-option:has(input[type=checkbox]:checked){border-color:#247858;background:#edf7f2}.engine-hour-option input:disabled{background:#eef2f0;color:#88958f}.engine-hours-total{display:grid;align-content:center;gap:5px;padding:13px;border-radius:9px;background:#173d32;color:#fff}.engine-hours-total strong{font-size:25px}.engine-hours-total small{color:#bdd0c7;line-height:1.3}@media(max-width:800px){.engine-hours-picker{grid-template-columns:1fr 1fr}.engine-hours-total{grid-column:1/-1}}@media(max-width:620px){.engine-hours-picker{grid-template-columns:1fr}.engine-hours-total{grid-column:auto}}
@media(max-width:620px){.checklist-status{grid-template-columns:1fr}}
.navigation-guidance{color:#61726a;margin:8px 0 14px;font-weight:700}
.aid-reference-links{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}.aid-reference-links a{display:inline-block;padding:3px 7px;border:1px solid #9fcdbb;border-radius:999px;background:#f2faf6;color:#176c53;font-size:12px;font-weight:800;text-decoration:none}.aid-reference-links a:hover,.aid-reference-links a:focus{background:#dff3e8;text-decoration:underline}
.light-list-disclosure{margin-top:6px}.light-list-disclosure>summary{display:inline-block;cursor:pointer;padding:4px 9px;border:1px solid #9fcdbb;border-radius:999px;background:#f2faf6;color:#176c53;font-size:12px;font-weight:800;list-style:none}.light-list-disclosure>summary::-webkit-details-marker{display:none}.light-list-disclosure[open]>summary{background:#dff3e8}.light-list-detail{margin-top:8px;padding:10px;border:1px solid #cfe1d8;border-radius:9px;background:#fff}.light-list-detail h5{margin:0 0 7px;font-size:14px}.light-list-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;margin:0}.light-list-detail dl div{display:grid;grid-template-columns:110px 1fr;gap:5px}.light-list-detail dt{font-weight:800;color:#46685a}.light-list-detail dd{margin:0;overflow-wrap:anywhere}@media(max-width:650px){.light-list-detail dl{grid-template-columns:1fr}}
.nearby-aids-panel{margin:16px 0;padding:16px;border:1px solid #cfe1d8;border-radius:12px;background:#f7fbf9}.nearby-aids-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.nearby-aids-heading p{margin:0;color:#61726a;font-size:12px;font-weight:800}.nearby-aids-heading h3{margin:3px 0}.nearby-aids-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nearby-aids-controls label{display:flex;align-items:center;gap:6px;font-weight:800}.nearby-aids-controls input{width:72px;padding:8px;border:1px solid #b9cbc2;border-radius:7px}.nearby-aids-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:9px}.nearby-aid-card{padding:12px;border:1px solid #d7e6df;border-radius:9px;background:#fff}.nearby-aid-card>div{display:flex;flex-direction:column}.nearby-aid-card>div span{color:#61726a;font-size:12px}.nearby-aid-card>strong{display:block;margin-top:4px;color:#176c53}
.nav-notice.cancellation{border-left-color:#a33}.nav-notice.closed{border-left-color:#66717a;background:#f4f6f5}.notice-label{display:block;width:max-content;margin-bottom:7px;padding:3px 7px;border-radius:999px;background:#e4f3eb;color:#176c53;font-size:11px}.nav-notice.closed .notice-label{background:#dfe4e2;color:#3d4b46}.nav-notice.cancellation .notice-label{background:#f8e2e2;color:#922f2f}.bnm-pair{padding:10px;border:1px solid #d8e1dc;border-radius:12px;background:#f1f5f3}.pair-label{text-align:center;font-weight:800;color:#52635b;margin-bottom:8px}.pair-label span{margin:0 8px;color:#9b3333}.pair-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.pair-grid.single{grid-template-columns:1fr}@media(max-width:900px){.pair-grid{grid-template-columns:1fr}.pair-label span{display:block;margin:3px}}
.marine-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:16px 0}.marine-controls label{font-size:12px;font-weight:800;color:#49666b}.marine-controls input,.marine-controls select{display:block;width:100%;box-sizing:border-box;margin-top:7px;border:1px solid var(--line);border-radius:10px;padding:11px;background:#fbfefe;font:inherit;color:inherit}.marine-controls label[hidden]{display:none}.marine-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.marine-results{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fbfefe}.marine-row{display:grid;grid-template-columns:1fr 80px 90px;gap:12px;padding:12px 14px;border-top:1px solid var(--line);align-items:center}.marine-row:first-child{border-top:0}.marine-row span,.marine-row strong{text-align:right}.marine-row span{color:#61767c}.marine-row strong{color:var(--teal)}@media(max-width:1000px){.marine-controls{grid-template-columns:1fr 1fr}.marine-columns{grid-template-columns:1fr}}@media(max-width:620px){.marine-controls{grid-template-columns:1fr}.marine-row{grid-template-columns:1fr auto auto}}
.marine-controls{grid-template-columns:220px minmax(0,1fr) minmax(0,1fr);align-items:start}.marine-date-control{padding:16px;border:1px solid #d8e1dc;border-radius:12px;background:#f8fbf9}.station-picker{min-width:0;padding:16px;border:1px solid #d8e1dc;border-radius:12px;background:#f8fbf9}.station-picker h3{margin:0 0 12px}.station-picker label{display:block;margin-top:12px}.station-picker>small{display:block;min-height:32px;margin-top:7px;color:#61726a;line-height:1.35}.station-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.station-search-row input{margin-top:0}.station-search-row button{border:0;border-radius:9px;padding:0 14px;background:#247858;color:#fff;font-weight:800;cursor:pointer}.station-search-row button:disabled{opacity:.6}@media(max-width:1000px){.marine-controls{grid-template-columns:1fr 1fr}.marine-date-control{grid-column:1/-1}}@media(max-width:620px){.marine-controls{grid-template-columns:1fr}.marine-date-control{grid-column:auto}.station-search-row{grid-template-columns:1fr}.station-search-row button{padding:11px}}
.weather-panel{border-top:4px solid #2878a8}.weather-controls{display:grid;grid-template-columns:minmax(180px,260px) minmax(220px,360px);gap:12px;margin:16px 0}.weather-controls label{padding:14px;border:1px solid #d8e1dc;border-radius:12px;color:#49666b;background:#f8fbf9;font-size:12px;font-weight:800}.weather-controls input,.weather-controls select{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:11px;border:1px solid var(--line);border-radius:10px;color:inherit;background:#fff;font:inherit}.weather-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:18px 0 10px}.weather-heading small{color:#61726a;font-weight:800}.weather-heading h3{margin:4px 0 0;font-family:Georgia,serif;font-size:24px}.weather-heading>span{color:#49666b;font-weight:800}.weather-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.weather-metrics article{min-width:0;padding:15px;border:1px solid #d8e1dc;border-radius:12px;background:#f8fbf9}.weather-metrics small,.weather-metrics strong,.weather-metrics span{display:block}.weather-metrics strong{margin:6px 0;color:#17372c;font-size:20px}.weather-metrics span{color:#6e7d76;font-size:11px}.weather-alerts,.weather-notable,.weather-unavailable{margin-top:14px;padding:15px;border-radius:12px}.weather-alerts{border:1px solid #e3b6a3;background:#fff5ef}.weather-alerts h3{margin:0 0 8px;color:#8c3c25;font-size:14px}.weather-alerts article{display:grid;gap:3px;padding:8px 0;border-top:1px solid #efd7cd}.weather-alerts article:first-of-type{border-top:0}.weather-alerts span,.weather-notable span,.weather-unavailable span{color:#65766e;font-size:12px;line-height:1.45}.weather-notable{display:grid;gap:4px;border:1px solid #d3e2da;background:#f4faf7}.weather-detail{color:#5e7168;line-height:1.55}.weather-unavailable{display:grid;gap:6px;border:1px dashed #c6d3cd;background:#f8fbf9}.weather-unavailable strong{font-size:18px}@media(max-width:1100px){.weather-metrics{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.weather-controls,.weather-metrics{grid-template-columns:1fr}.weather-heading{align-items:start;flex-direction:column}.weather-panel .section-title{align-items:flex-start}}
/* Website performance scorecard */
.performance-dashboard{scroll-margin-top:20px}.performance-title{align-items:flex-end}.performance-title>div>small{display:block;margin-top:5px;color:#7a8c99;font-size:11px}.rag-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.rag{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.rag.green{color:#176d50;background:#e4f5ed}.rag.amber{color:#8f6115;background:#fff0cf}.rag.red{color:#9b3d3a;background:#fde7e5}.performance-lead{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:14px;margin-bottom:14px}.performance-score{display:grid;grid-template-columns:108px minmax(0,1fr);align-items:center;gap:19px;min-height:180px;padding:22px;border:1px solid #edc0be;border-radius:12px;background:linear-gradient(135deg,#fff7f6,#fdebea)}.score-circle{width:100px;height:100px;display:grid;place-content:center;border:8px solid #d95854;border-radius:50%;color:#8f3734;background:rgba(255,255,255,.75);text-align:center}.score-circle strong{font-family:Georgia,serif;font-size:34px;line-height:.95}.score-circle span{margin-top:4px;color:#a45c59;font-size:9px;font-weight:800}.performance-score h3{margin:12px 0 7px;color:#713533;font-family:Georgia,serif;font-size:20px;line-height:1.2}.performance-score p{margin:0;color:#8d5d5b;font-size:11px;line-height:1.5}.performance-gate{display:grid;align-content:start;padding:20px;border:1px solid #d5e0e6;border-radius:12px;background:#fff}.performance-gate>small{color:#718593;font-size:9px;font-weight:900;letter-spacing:.12em}.performance-gate h3{margin:8px 0;color:#102a43;font-family:Georgia,serif;font-size:18px}.performance-gate>p{margin:0 0 14px;color:#71828f;font-size:10px;line-height:1.5}.performance-gate>div{display:grid;grid-template-columns:1fr auto;align-items:end;gap:3px 10px;margin-top:auto;padding-top:12px;border-top:1px solid #e6ecef}.performance-gate>div span{color:#667d8c;font-size:10px;font-weight:800}.performance-gate>div strong{color:#102a43;font-family:Georgia,serif;font-size:27px}.performance-gate>div small{grid-column:1/-1;color:#936c31;font-size:9px}.performance-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:15px}.performance-category{min-height:140px;padding:15px;border:1px solid #dfe7ec;border-radius:10px}.performance-category.red{border-color:#edc0be;background:#fff7f6}.performance-category.amber{border-color:#ead7a9;background:#fffaf0}.performance-category.green{border-color:#badfce;background:#f5fbf8}.performance-category>div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.performance-category>div small{color:#7c8e9a;font-size:8px;font-weight:900;text-transform:uppercase}.performance-category>div strong{color:#102a43;font-family:Georgia,serif;font-size:25px}.performance-category h3{margin:11px 0 5px;color:#314b5d;font-size:11px}.performance-category p{margin:0 0 10px;color:#718491;font-size:9px;line-height:1.4}.performance-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,.65fr);gap:14px;align-items:start}.performance-columns>article,.performance-card{overflow:hidden;border:1px solid #dfe7ec;border-radius:11px;background:#fff}.subsection-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:16px}.subsection-heading p{margin:0 0 4px;color:#788b98;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.subsection-heading h3{margin:0;color:#102a43;font-family:Georgia,serif;font-size:18px}.subsection-heading>small{color:#8a672f;font-size:8px;font-weight:800}.performance-table-wrap{overflow-x:auto}.performance-table{width:100%;min-width:760px;border-collapse:collapse}.performance-table th,.performance-table td{padding:10px 9px;border-top:1px solid #e8eef1;text-align:left;vertical-align:middle}.performance-table th{color:#687e8d;background:#f6f9fa;font-size:8px;letter-spacing:.05em;text-transform:uppercase}.performance-table td{color:#536b7b;font-size:9px;line-height:1.35}.performance-table td:first-child{width:24%}.performance-table td:last-child{width:33%}.performance-table td b,.performance-table td small{display:block}.performance-table td b{color:#314b5d;font-size:10px}.performance-table td small{margin-top:3px;color:#8b9aa4;font-size:8px}.performance-table td.missing{color:#9b3d3a;font-size:17px;font-weight:900}.performance-columns>aside{display:grid;gap:14px}.performance-card>.subsection-heading{padding-bottom:12px}.performance-card>p{margin:0 15px 15px;padding:10px;border-radius:7px;color:#6d7f8d;background:#f5f8fa;font-size:9px;line-height:1.5}.performance-channels{padding:0 15px}.performance-channels article{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:8px;padding:10px 0;border-top:1px solid #e8eef1}.performance-channels article:first-child{border-top:0}.performance-channels i{width:7px;height:7px;border-radius:50%}.performance-channels i.green{background:#1e9c6c}.performance-channels i.red{background:#c24b49}.performance-channels b,.performance-channels small{display:block}.performance-channels b{color:#314b5d;font-size:10px}.performance-channels small{margin-top:2px;color:#8797a2;font-size:8px}.performance-channels article>div:last-child{text-align:right}.performance-channels strong{color:#102a43;font-size:11px}.performance-actions{display:grid;gap:10px;counter-reset:actions;margin:0;padding:0 15px 16px;list-style:none}.performance-actions li{display:grid;grid-template-columns:24px 1fr;gap:2px 8px;counter-increment:actions}.performance-actions li:before{content:counter(actions);grid-row:1/span 2;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#102a43;font-size:8px;font-weight:900}.performance-actions b{color:#344f61;font-size:9px}.performance-actions span{color:#83929d;font-size:8px;line-height:1.4}.performance-method{margin:14px 0 0;padding:11px 13px;border-left:3px solid #6e8da4;color:#667c8b;background:#eef3f6;font-size:9px;line-height:1.5}
@media(max-width:1050px){.performance-lead,.performance-columns{grid-template-columns:1fr}.performance-categories{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.performance-title{align-items:flex-start}.rag-legend{justify-content:flex-start}.performance-score{grid-template-columns:1fr}.performance-categories{grid-template-columns:1fr}.performance-table{min-width:720px}}
.performance-page{display:block;min-height:100vh;background:#eef3f5}.performance-page .performance-report{width:100%;max-width:none;margin:0;padding:28px clamp(20px,4vw,64px) 36px}.performance-report-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin:0 0 26px;padding:0 0 18px;border-bottom:1px solid #d7e1e6}.performance-back{justify-self:start;color:#316b92;font-size:11px;font-weight:800}.performance-report-brand{display:flex;align-items:center;gap:10px}.performance-report-brand>span{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#102a43;font-size:11px;font-weight:900}.performance-report-brand strong,.performance-report-brand small{display:block}.performance-report-brand strong{color:#102a43;font-family:Georgia,serif;font-size:17px}.performance-report-brand small{margin-top:2px;color:#708492;font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.performance-report-header button{justify-self:end;padding:10px 15px;border:0;border-radius:7px;color:#fff;background:#2878a8;font-size:10px;font-weight:900}.performance-report-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:18px}.performance-report-intro p{margin:0 0 6px;color:#718592;font-size:10px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.performance-report-intro h1{margin:0;color:#102a43;font-family:Georgia,serif;font-size:clamp(29px,4vw,46px);font-weight:500}.performance-report-intro>div>span{display:block;margin-top:6px;color:#7d8f9b;font-size:10px}.performance-report .performance-lead,.performance-report .performance-categories,.performance-report .performance-columns,.performance-report .performance-method{max-width:1600px;margin-left:auto;margin-right:auto}.performance-report-table{overflow:hidden;border:1px solid #dfe7ec;border-radius:11px;background:#fff}.performance-report-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding-top:13px;border-top:1px solid #d6e0e5;color:#778995;font-size:9px}.performance-report-footer span:first-child{color:#425d6f;font-family:Georgia,serif;font-size:11px;font-weight:700}
@media(max-width:760px){.performance-report-header{grid-template-columns:1fr auto}.performance-report-brand{grid-column:1/-1;grid-row:1;justify-self:center}.performance-back{grid-column:1;grid-row:2}.performance-header-actions{grid-column:2;grid-row:2}.performance-report-intro{align-items:flex-start;flex-direction:column}.performance-page .performance-report{padding:20px 14px 28px}}
@media print{@page{size:landscape;margin:.35in}.performance-page{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.performance-page .performance-report{padding:0}.performance-report-header{display:none}.performance-report-intro{margin-bottom:10px}.performance-report-intro h1{font-size:28px}.performance-report .performance-lead{grid-template-columns:1.45fr .75fr;gap:8px;margin-bottom:8px}.performance-score{min-height:135px;padding:14px}.score-circle{width:78px;height:78px;border-width:6px}.score-circle strong{font-size:27px}.performance-score h3{font-size:15px}.performance-gate{padding:14px}.performance-categories{grid-template-columns:repeat(6,1fr);gap:5px;margin-bottom:8px}.performance-category{min-height:108px;padding:9px;break-inside:avoid}.performance-category h3{font-size:8px}.performance-category p{font-size:7px}.performance-columns{grid-template-columns:1.7fr .65fr;gap:8px}.subsection-heading{padding:10px}.performance-table{min-width:0}.performance-table th,.performance-table td{padding:5px 6px}.performance-table td{font-size:7px}.performance-table td b{font-size:7px}.performance-table td small{font-size:6px}.performance-card{break-inside:avoid}.performance-card>.subsection-heading{padding-bottom:6px}.performance-channels{padding:0 9px}.performance-channels article{padding:5px 0}.performance-card>p{margin:0 9px 8px;padding:6px;font-size:6px}.performance-actions{gap:5px;padding:0 9px 8px}.performance-actions li{grid-template-columns:17px 1fr}.performance-actions li:before{width:16px;height:16px;font-size:6px}.performance-actions b{font-size:7px}.performance-actions span{font-size:6px}.performance-method{margin-top:8px;padding:6px;font-size:7px}.performance-report-footer{margin-top:7px;padding-top:6px}.rag{padding:3px 5px;font-size:6px}}

/* Keep report panels in the report grid instead of inheriting the app navigation sidebar. */
.performance-dashboard[hidden]{display:none!important}
.performance-header-actions{display:flex;gap:8px;justify-self:end}.performance-header-actions button{position:static}.performance-header-actions #refresh-performance{background:#176d50}.performance-refresh-status{display:block;margin-top:5px;color:#607684;font-size:9px;font-weight:700;letter-spacing:0;text-transform:none}.performance-refresh-status.error{color:#9b3d3a}.performance-refresh-status.success{color:#176d50}

/* Monthly vessel checklist */
.checklist-dialog{width:min(980px,calc(100% - 24px));max-height:90vh;border:0;border-radius:16px;padding:0;box-shadow:0 20px 70px #10251d66}.checklist-dialog::backdrop{background:#10251d99}.checklist-dialog form{padding:22px}.checklist-dialog-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.checklist-dialog-heading small{color:#176c53;font-size:10px;font-weight:900;letter-spacing:.08em}.checklist-dialog-heading h3{margin:4px 0;color:#17372c;font-size:24px}.checklist-dialog-heading p{margin:5px 0 14px;color:#61726a}.checklist-filter{display:flex;gap:7px;overflow-x:auto;padding:4px 0 13px}.checklist-filter button{padding:8px 11px;border:1px solid #c8d8d0;border-radius:999px;color:#385e50;background:#fff;font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer}.checklist-filter button.active{border-color:#176c53;color:#fff;background:#176c53}.checklist-items{display:grid;gap:9px;max-height:48vh;overflow-y:auto;padding-right:4px}.checklist-item{display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(220px,.75fr);gap:14px;align-items:center;padding:13px;border:1px solid #dce4df;border-radius:10px;background:#fff}.checklist-item[hidden]{display:none}.checklist-item small{color:#176c53;font-size:9px;font-weight:900;text-transform:uppercase}.checklist-item h4{margin:4px 0;color:#17372c;font-size:13px}.checklist-status-options{display:flex;gap:5px}.checklist-status-options label{cursor:pointer}.checklist-status-options input{position:absolute;opacity:0;pointer-events:none}.checklist-status-options span{display:block;padding:7px 9px;border:1px solid #c8d8d0;border-radius:7px;color:#536b60;font-size:10px;font-weight:800}.checklist-status-options input:checked+span{border-color:#176c53;color:#fff;background:#176c53}.checklist-status-options label.pending input:checked+span{border-color:#b47a1a;background:#b47a1a}.checklist-status-options input:disabled+span{cursor:default}.checklist-item-note{display:grid;gap:4px;color:#536b60;font-size:9px;font-weight:800}.checklist-item-note input{box-sizing:border-box;width:100%;padding:8px;border:1px solid #c8d8d0;border-radius:7px;font:11px inherit}.checklist-submission-fields{display:grid;grid-template-columns:220px 1fr;gap:12px;margin-top:14px;padding:13px;border-radius:10px;background:#f1f7f4}.checklist-submission-fields label{display:grid;gap:5px;color:#385e50;font-size:10px;font-weight:800}.checklist-submission-fields input,.checklist-submission-fields textarea{box-sizing:border-box;width:100%;padding:9px;border:1px solid #c8d8d0;border-radius:7px;background:#fff;font:12px inherit}.checklist-submit-status{min-height:18px;color:#7d641c;font-size:11px;font-weight:800}.checklist-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.checklist-dialog-actions button{padding:10px 14px;border:0;border-radius:8px;color:#fff;background:#176c53;font-weight:800;cursor:pointer}.checklist-dialog-actions button.secondary{color:#385e50;background:#dfeae5}
.checklist-heading-actions{display:flex;gap:8px;align-items:center}.checklist-heading-actions .secondary{padding:8px 11px;border:1px solid #c8d8d0;border-radius:8px;color:#385e50;background:#fff;font-weight:800;cursor:pointer}.checklist-manager-items{display:grid;gap:8px;max-height:42vh;overflow-y:auto;margin:12px 0}.checklist-manager-row{display:grid;grid-template-columns:1fr 210px auto;gap:10px;align-items:end;padding:11px;border:1px solid #dce4df;border-radius:10px}.checklist-manager-row label{display:grid;gap:5px;color:#385e50;font-size:10px;font-weight:800}.checklist-manager-row input,.checklist-manager-row select{box-sizing:border-box;width:100%;padding:9px;border:1px solid #c8d8d0;border-radius:7px;background:#fff;font:12px inherit}.checklist-manager-row button{padding:9px;border:0;border-radius:7px;color:#93422f;background:#f7e4df;font-weight:800;cursor:pointer}.checklist-add-item{padding:9px 12px;border:1px dashed #3e9b69;border-radius:8px;color:#176c53;background:#f1f7f4;font-weight:800;cursor:pointer}.checklist-history{margin:16px 0;padding:12px;border-radius:10px;background:#f1f7f4}.checklist-history h4{margin:0 0 8px}.checklist-history details{padding:7px 0;border-top:1px solid #d8e6df}.checklist-history summary{cursor:pointer;color:#385e50;font-size:11px;font-weight:800}.checklist-history p{margin:6px 0;font-size:10px;color:#536b60}
@media(max-width:800px){.checklist-item,.checklist-manager-row{grid-template-columns:1fr}.checklist-submission-fields{grid-template-columns:1fr}.checklist-status-options{flex-wrap:wrap}.checklist-heading-actions{align-items:flex-start}.checklist-heading-actions .secondary{font-size:10px}}

/* Precision Marine invoice payments */
.invoice-ledger{margin:20px 0;padding:18px;border:1px solid #dce4df;border-radius:14px;background:#f8fbf9;scroll-margin-top:15px}.invoice-list{display:grid;gap:10px;margin-top:14px}.invoice-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:15px;border:1px solid #dce4df;border-left:5px solid #c38a2d;border-radius:11px;background:#fff}.invoice-card.past-due{border-left-color:#b84141}.invoice-card.due-today{border-left-color:#c38a2d}.invoice-card.future-due{border-left-color:#3978c8}.invoice-card.paid{border-left-color:#247858}.invoice-card h4,.invoice-card p{margin:0}.invoice-card h4{margin-top:6px;color:#17372c}.invoice-card p{margin-top:5px;color:#61726a;font-size:12px}.invoice-card small{display:block;margin-top:5px;color:#7b8c84}.invoice-card .paid-button{padding:10px 18px;border:0;border-radius:9px;color:#fff;background:#176c53;font-weight:900;cursor:pointer}.invoice-card .source-status{display:inline-flex;padding:5px 8px;border-radius:999px;color:#8f6115;background:#fff0cf;font-size:9px;font-weight:900;text-transform:uppercase}.invoice-card .due-badge{margin-left:6px}.invoice-card.paid .source-status{color:#176d50;background:#e4f5ed}.invoice-vendor{margin-left:8px;color:#52675e;font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.invoice-source{color:#176c53;font-weight:800}.payment-dialog{width:min(620px,calc(100% - 28px));border:0;border-radius:16px;padding:0;box-shadow:0 20px 70px #10251d66}.payment-dialog::backdrop{background:#10251d99}.payment-dialog form{padding:22px}.payment-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.payment-heading small{color:#176c53;font-weight:900}.payment-heading h3{margin:4px 0 16px;color:#17372c}.dialog-close{border:0;background:transparent;color:#61726a;font-size:28px;cursor:pointer}.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.payment-grid label{display:grid;gap:5px;color:#385e50;font-size:11px;font-weight:800}.payment-grid input,.payment-grid select{box-sizing:border-box;width:100%;padding:10px;border:1px solid #c8d8d0;border-radius:8px;background:#fff;font:13px inherit}.payment-grid input[readonly]{background:#edf3f0}.check-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:12px;border-radius:9px;background:#f1f7f4}.check-fields[hidden]{display:none}.payment-note,.payment-error{font-size:11px}.payment-note{color:#61726a}.payment-error{min-height:16px;color:#9b3d3a;font-weight:800}.payment-actions{display:flex;justify-content:flex-end;gap:8px}.payment-actions button{padding:10px 14px;border:0;border-radius:8px;color:#fff;background:#176c53;font-weight:800;cursor:pointer}.payment-actions button.secondary{color:#385e50;background:#dfeae5}
@media(max-width:700px){.invoice-card,.payment-grid,.check-fields{grid-template-columns:1fr}}
.performance-page .performance-columns>aside{position:static;inset:auto;width:auto;height:auto;padding:0;background:transparent;color:inherit;display:grid;gap:14px}

/* Performance history */
.performance-tabs{display:flex;gap:7px;width:max-content;margin:0 auto 24px;padding:5px;border:1px solid #d7e1e6;border-radius:10px;background:#fff}.performance-tabs a{padding:9px 14px;border-radius:7px;color:#607684;font-size:10px;font-weight:900;text-decoration:none}.performance-tabs a.active{color:#fff;background:#102a43}.tracking-export{justify-self:end;padding:10px 15px;border-radius:7px;color:#fff;background:#2878a8;font-size:10px;font-weight:900;text-decoration:none}.tracking-periods{display:flex;flex-wrap:wrap;gap:7px;max-width:1600px;margin:0 auto 14px}.tracking-periods button{padding:9px 12px;border:1px solid #d5e0e6;border-radius:8px;color:#536b7b;background:#fff;font-size:9px;font-weight:900;cursor:pointer}.tracking-periods button.active{border-color:#2878a8;color:#fff;background:#2878a8}.tracking-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:1600px;margin:0 auto 14px}.tracking-summary article{display:grid;gap:5px;min-height:112px;padding:16px;border:1px solid #dfe7ec;border-radius:11px;background:#fff}.tracking-summary small{color:#718592;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.tracking-summary strong{color:#102a43;font-family:Georgia,serif;font-size:17px;line-height:1.3}.tracking-summary span{color:#81919b;font-size:9px}.tracking-summary .tracking-score{background:#102a43}.tracking-summary .tracking-score small,.tracking-summary .tracking-score span{color:#b9cbd4}.tracking-summary .tracking-score strong{color:#fff;font-size:32px}.tracking-insight{display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:1600px;margin:0 auto 14px;padding:14px 17px;border-left:4px solid #2878a8;border-radius:8px;background:#eaf4f9}.tracking-insight b{color:#274f68;font-size:11px}.tracking-insight span{color:#648092;font-size:9px}.tracking-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,.55fr);gap:14px;align-items:start;max-width:1600px;margin:0 auto}.tracking-grid>.performance-report-table{overflow:hidden;border:1px solid #dfe7ec;border-radius:11px;background:#fff}.tracking-side{position:static;inset:auto;width:auto;height:auto;padding:0;background:transparent;color:inherit;display:grid;gap:14px}.tracking-table td:first-child{width:auto}.history-list{display:grid;padding:0 15px 15px}.history-list article{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:10px 0;border-top:1px solid #e8eef1}.history-list article:first-child{border-top:0}.history-list b{color:#314b5d;font-size:10px}.history-list span{color:#102a43;font-size:10px;font-weight:900}.history-list small{grid-column:1/-1;color:#8797a2;font-size:8px}.tracking-rules{display:grid;gap:9px;margin:0;padding:0 18px 18px 31px;color:#687e8d;font-size:9px;line-height:1.5}@media(max-width:1050px){.tracking-summary{grid-template-columns:1fr 1fr}.tracking-grid{grid-template-columns:1fr}}@media(max-width:650px){.performance-tabs{width:100%}.performance-tabs a{flex:1;text-align:center}.tracking-summary{grid-template-columns:1fr}.tracking-insight{align-items:flex-start;flex-direction:column}.tracking-periods button{flex:1 1 45%}}
/* Receivables review controls wrap on tablet and narrow screens. */
.receivables-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:16px 0}
.receivables-actions button,.receivables-actions a{min-height:44px;padding:12px 16px;border-radius:8px;font:inherit}
#receivables-request-status,#receivables-sync-status{font-size:.9rem;line-height:1.5;overflow-wrap:anywhere}
#receivables-exceptions{margin:12px 0;color:#815308}
#receivables-exceptions summary{cursor:pointer;font-weight:600;padding:10px 0}
.eoc-due-item a{overflow-wrap:anywhere}
.document-folder,.folder-head>div,.folder-files{min-width:0;overflow-wrap:anywhere}
.folder-head>b{flex-shrink:0}

/* Persistent fuel log */
.fuel-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.fuel-entry-form{margin:18px 0;padding:18px;border:1px solid #dce4df;border-radius:12px;background:#f8fbf9}.fuel-form-heading{display:flex;justify-content:space-between;gap:18px;align-items:start;margin-bottom:16px}.fuel-form-heading h3,.fuel-form-heading p{margin:0}.fuel-form-heading p{max-width:680px;margin-top:5px;color:#61726a;font-size:13px}.fuel-form-heading button{border:0;border-radius:9px;padding:12px 16px;background:#247858;color:#fff;font-weight:800;white-space:nowrap}.fuel-form-heading button:disabled{opacity:.6}.fuel-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.fuel-entry-form label{font-size:12px;font-weight:800;color:#49665b}.fuel-entry-form label>span{color:#718078;font-weight:600}.fuel-entry-form input,.fuel-entry-form select,.fuel-entry-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #c9d8d0;border-radius:9px;padding:10px;background:#fff;font:inherit;color:#17372c}.fuel-entry-form textarea{resize:vertical;min-height:43px}.fuel-entry-form input[type=file]{font-size:11px}.fuel-wide{grid-column:span 2}.fuel-total-preview{display:grid;align-content:center;gap:5px;padding:11px 13px;border-radius:9px;background:#173d32;color:#fff}.fuel-total-preview small{color:#bdd0c7;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.fuel-total-preview strong{font-size:24px}.fuel-entry-status{min-height:18px;margin:13px 0 0;color:#49665b;font-size:12px;font-weight:800}.fuel-history-heading{display:flex;justify-content:space-between;align-items:end;margin:22px 0 10px}.fuel-history-heading h3,.fuel-history-heading small{margin:0}.fuel-history-heading small{color:#718078}.fuel-history{display:grid;gap:10px}.fuel-card{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(4,minmax(105px,.55fr));gap:12px;align-items:center;padding:15px;border:1px solid #dce4df;border-left:5px solid #247858;border-radius:11px;background:#fff}.fuel-card h4,.fuel-card p{margin:0}.fuel-card h4{margin-top:4px;color:#17372c}.fuel-card p{margin-top:5px;color:#61726a;font-size:12px}.fuel-card small{display:block;color:#718078;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.fuel-card strong{display:block;margin-top:4px}.fuel-card a{color:#176c53;font-weight:800}.fuel-card-notes{grid-column:1/-1;padding-top:9px;border-top:1px solid #edf1ef;color:#61726a;font-size:12px}.fuel-card-receipt{display:inline-block;margin-top:6px}@media(max-width:900px){.fuel-summary{grid-template-columns:1fr 1fr}.fuel-form-grid{grid-template-columns:1fr 1fr}.fuel-card{grid-template-columns:1fr 1fr 1fr}.fuel-card>div:first-child{grid-column:1/-1}}@media(max-width:620px){.fuel-summary,.fuel-form-grid,.fuel-card{grid-template-columns:1fr}.fuel-form-heading{display:grid}.fuel-form-heading button{width:100%}.fuel-wide,.fuel-card>div:first-child{grid-column:auto}.fuel-history-heading{align-items:start;flex-direction:column;gap:4px}}

/* Restored protected capability: sunrise, sunset, and civil twilight */
.sun-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}.sun-controls label{display:flex;flex-direction:column;gap:.4rem;font-weight:600}.sun-controls input,.sun-controls select{font:inherit;padding:.7rem;border:1px solid var(--line,#cbd5e1);border-radius:.5rem;background:var(--surface,#fff)}.sun-band{display:grid;grid-template-columns:1fr 2fr 1fr;gap:.5rem;margin:1rem 0 .75rem}.sun-band span{height:.4rem;border-radius:99px;background:#f59e0b;font-size:0}.sun-band span:nth-child(2){background:#facc15}.sun-band span:nth-child(3){background:#f59e0b}.sun-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.sun-cards article{padding:1rem;border:1px solid var(--line,#cbd5e1);border-radius:.65rem;background:var(--surface,#fff)}.sun-cards small{display:block;color:var(--muted,#64748b);font-size:.8rem}.sun-cards strong{display:block;margin-top:.35rem;font-size:1.15rem}.sun-location{margin:.8rem 0 0;color:var(--muted,#64748b)}
@media (max-width:800px){.sun-controls,.sun-cards{grid-template-columns:1fr 1fr}.sun-cards article:first-child{grid-column:span 2}.sun-cards article:last-child{grid-column:span 2}}
@media (max-width:520px){.sun-controls,.sun-cards{grid-template-columns:1fr}.sun-cards article:first-child,.sun-cards article:last-child{grid-column:auto}.sun-band{grid-template-columns:1fr 1.8fr 1fr}}

.fuel-entry-form{scroll-margin-top:20px}.fuel-entry-form.is-editing{border:2px solid #247858}.fuel-form-actions{display:flex;gap:8px;flex-wrap:wrap}.fuel-form-actions button,.fuel-card-edit{min-height:44px;touch-action:manipulation}.fuel-form-actions button[hidden]{display:none}.fuel-form-actions #cancel-fuel-edit{background:#e1ebe5;color:#17372c}.fuel-edit-banner{padding:12px;border-radius:8px;background:#e1ebe5;color:#17372c;font-weight:800}.fuel-card-edit{display:inline-flex;align-items:center;box-sizing:border-box;padding:8px 14px;margin:10px 8px 0 0;border:1px solid #247858;border-radius:8px;text-decoration:none;background:#f0f7f3}.fuel-card-edit:focus-visible{outline:3px solid #247858;outline-offset:3px}#fuel-existing-receipt{font-size:12px;color:#49665b}#fuel-existing-receipt p{margin:6px 0}@media(max-width:620px){.fuel-form-actions{width:100%}.fuel-form-actions button{flex:1}}
