/* Neptune identity: dense blue lists and forms within the current page. */
/* All values come from palette.css; no application-specific colors. */
:root{--neptune-navy:var(--color-brand);--neptune-blue:var(--color-selection);--neptune-stripe:var(--color-stripe);--neptune-border:var(--color-border);--neptune-ink:var(--color-text);--neptune-canvas:var(--color-canvas);color:var(--neptune-ink);background:var(--neptune-canvas);font-family:"Segoe UI",Arial,sans-serif}
a{color:var(--color-primary)}button,input:not([type=checkbox]),select{border-radius:3px}button{color:var(--neptune-navy);border-color:var(--color-border)}.primary,.app-tabs .selected{background:var(--neptune-navy);border-color:var(--neptune-navy);color:var(--color-surface)}input[type=checkbox]{accent-color:var(--color-primary)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:var(--neptune-blue)}
.intro{background:var(--neptune-navy)}.intro em{color:var(--color-accent-light)}.intro p,.intro small{color:var(--color-on-dark-muted)}.eyebrow{color:var(--color-primary)}.brand{color:var(--neptune-navy)}.intro .brand{color:var(--color-surface)}.topbar{border-bottom:3px solid var(--neptune-navy)}.topbar nav a{color:var(--neptune-navy)}.content{max-width:1440px;padding-top:26px}h1{font-size:28px;letter-spacing:-.02em}.heading{margin-bottom:22px}.card,.panel,.empty{border-radius:4px;border-color:var(--neptune-border);box-shadow:none}.card{border-top:4px solid var(--neptune-navy)}.card button{background:var(--neptune-navy);color:var(--color-surface)}.card button:disabled{background:var(--color-canvas);color:var(--color-text-muted);border-color:var(--color-border);opacity:1}.tag{border-radius:3px;background:var(--color-stripe)}.tag.active{color:var(--color-brand);background:var(--color-stripe)}.notice{border-radius:3px;background:var(--color-stripe);border-color:var(--color-border);color:var(--color-brand)}.notice.error{background:var(--color-danger-soft);border-color:var(--color-danger-border);color:var(--color-danger)}
.data-list{background:var(--color-surface);border:1px solid var(--neptune-border);border-radius:2px;min-width:0;overflow:hidden}.list-scroll{overflow:auto;max-height:62vh;scrollbar-color:var(--color-control-border) var(--color-canvas);scrollbar-width:thin}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;line-height:1.3;text-align:left}.data-table caption{background:var(--neptune-navy);color:var(--color-surface);font-size:17px;letter-spacing:.045em;font-weight:500;text-align:center;padding:8px 12px;caption-side:top}.data-table th{position:sticky;top:0;background:var(--color-surface);color:var(--color-text);z-index:1;font-weight:650;padding:12px 10px;border-bottom:2px solid var(--color-border);white-space:nowrap;text-align:left}.data-table th+th{border-left:1px solid var(--color-border)}.data-table td{padding:7px 10px;border:0;border-bottom:1px solid var(--color-surface);vertical-align:middle;text-align:left}.data-table tbody tr:nth-child(even){background:var(--neptune-stripe)}.data-table tbody tr:nth-child(odd){background:var(--color-surface)}.data-table tbody tr:hover{background:var(--color-hover)}.data-table tbody tr.selected,.data-table tbody tr.selected:hover{background:var(--neptune-blue);color:var(--color-surface)}.data-table .row-select{border:0;border-radius:0;background:transparent;color:inherit;display:block;width:100%;text-align:left;padding:3px 0;font-size:14px;font-weight:400}.data-table .row-select:hover{filter:none}.data-table .row-select strong{font-weight:550}.data-table .row-select small{display:block;font-size:12px;color:var(--color-text-muted);margin-top:3px}.data-table .selected small{color:var(--color-surface)}.data-table a{color:var(--neptune-navy);font-weight:550;text-underline-offset:3px}.data-table .selected a{color:var(--color-surface)}.data-table .nowrap{white-space:nowrap}.data-table .empty-row{padding:22px;color:var(--color-text-muted)}.data-table tbody tr:focus-within{outline:2px solid var(--neptune-blue);outline-offset:-2px}.data-table .state-label{font-size:12px;font-weight:500}.data-table .list-action{padding:5px 11px;font-size:13px}
.admin-layout{grid-template-columns:minmax(300px,35%) minmax(0,1fr);align-items:start}.user-list{display:block;max-height:none;overflow:visible}.user-list .list-scroll{max-height:65vh}.user-list .data-table td{padding:6px 10px}.user-list .data-table td:last-child{width:100px}.user-list button.selected{background:transparent}.access-editor{padding:0;overflow:hidden}.editor-title{margin:0;background:var(--neptune-navy);color:var(--color-surface);font-size:17px;letter-spacing:.025em;padding:10px 18px;font-weight:500}.editor-body{padding:22px}.editor-body h2{margin-bottom:6px}.app-tabs{gap:6px}.app-tabs button{font-size:13px;padding:9px 12px}.matrix{font-size:14px;min-width:450px}.matrix th{background:var(--color-surface);white-space:nowrap;border-bottom:2px solid var(--color-border)}.matrix th+th{border-left:1px solid var(--color-border)}.matrix td{padding:9px 10px;border-bottom:1px solid var(--color-surface)}.matrix tbody tr:nth-child(even){background:var(--neptune-stripe)}.matrix tbody tr:hover{background:var(--color-hover)}.matrix tbody tr:focus-within{background:var(--color-stripe)}.actions{padding-top:18px;border-top:1px solid var(--neptune-border)}.actions .muted{font-size:13px}.presets{gap:8px}.presets button{padding:7px 10px}.screen-editor{padding:0;max-width:960px;margin:0;overflow:hidden}.screen-editor .editor-body{padding:26px}.screen-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}.screen-form .form-help,.screen-form .form-actions{grid-column:1/-1}.screen-form .form-actions{display:flex;gap:12px;border-top:1px solid var(--neptune-border);padding-top:20px;margin-top:4px}.screen-form .form-actions button{min-width:120px}.audit-panel{padding:0}.function-list{max-width:1080px}.function-list td:last-child{width:100px}.function-list td{height:40px}.access-crumb{font-size:14px;color:var(--color-text-muted);margin-bottom:16px}.access-crumb a{margin-right:8px}
@media(max-width:1000px){.admin-layout{grid-template-columns:minmax(260px,32%) minmax(0,1fr)}.editor-body{padding:16px}.content{padding-left:22px;padding-right:22px}}
@media(max-width:760px){.admin-layout{grid-template-columns:1fr}.user-list .list-scroll{max-height:260px}.screen-form{grid-template-columns:1fr}.screen-editor .editor-body{padding:20px}.data-table{font-size:14px}.data-table caption{font-size:16px}.list-scroll{max-height:65vh}.function-list .data-table{min-width:580px}.app-tabs button{flex:1}.content{padding-left:16px;padding-right:16px}.data-table th,.data-table td{padding-left:9px;padding-right:9px}.screen-form .form-actions{flex-wrap:wrap}.actions{align-items:flex-start;flex-direction:column}}
.form input:not([type=checkbox]),.form select,.company select{border-color:var(--color-control-border)}.notice.success,.tag.active{color:var(--color-success);background:var(--color-success-soft)}.notice.warning{color:var(--color-warning);background:var(--color-warning-soft)}

/* Marine brand: vector wordmark with the trident replacing T. */
.brand{display:inline-flex;align-items:center;flex-shrink:0;line-height:1;letter-spacing:normal}.brand-logo{display:block;width:180px;height:auto}.intro .brand{align-self:flex-start}.intro .brand-logo{width:270px;max-width:100%}@media(max-width:760px){.brand-logo{width:148px}.intro .brand-logo{width:220px}}

/* Labeling uses shared list and in-page form components. */
.label-nav{display:flex;gap:10px 22px;flex-wrap:wrap;margin-bottom:24px;padding:14px 0;border-bottom:1px solid var(--color-border)}.label-nav a{font-size:14px;font-weight:600}.label-editor{max-width:1100px}.label-elements{min-width:0}.label-elements input[type=number]{min-width:64px;padding:7px;font-size:13px}.label-elements .data-table{min-width:730px}.label-preview{margin-top:24px;padding:18px;background:var(--color-canvas);border:1px solid var(--color-border)}.label-preview img{display:block;width:min(100%,650px);height:auto;border:1px solid var(--color-border);background:var(--color-surface)}.label-help{font-size:13px;margin-top:18px}.label-code{font-family:monospace;font-size:12px;white-space:nowrap}.data-table td>small,.label-job small{display:block;margin-top:4px;font-size:12px}.label-job{min-width:170px;padding:6px 0}.label-job+.label-job{border-top:1px solid var(--color-border)}.label-job button{padding:5px 8px;font-size:12px}.label-error{color:var(--color-danger)}

/* Operational workflow: existing palette, compact lists and in-page forms. */
.wf-actions{display:flex;gap:8px;flex-wrap:wrap}.wf-action{display:inline-block;padding:10px 13px;border:1px solid var(--color-border);border-radius:3px;background:var(--color-surface);color:var(--color-brand);font-size:14px;font-weight:600;text-decoration:none}.wf-facts{display:grid;grid-template-columns:200px 1fr;gap:12px 20px;margin:20px 0 28px}.wf-facts dt{font-size:14px;color:var(--color-text-muted)}.wf-facts dd{margin:0;overflow-wrap:anywhere}.wf-steps{display:flex;gap:8px;flex-wrap:wrap;padding:0;list-style:none}.wf-steps li{padding:10px;background:var(--color-stripe);border-bottom:3px solid var(--color-border);font-size:14px}.wf-steps li.current{background:var(--color-brand);color:var(--color-on-dark);border-color:var(--color-primary)}.wf-blocked{background:var(--color-danger-soft);color:var(--color-danger)}.wf-section{margin-top:24px}.wf-diagram{width:100%;height:auto}.wf-audit{margin-top:24px}.wf-audit summary{cursor:pointer;padding:14px;background:var(--color-stripe)}.screen-form textarea{width:100%;font:inherit;line-height:1.6;padding:12px;border:1px solid var(--color-control-border);color:var(--color-text);background:var(--color-surface);border-radius:3px}.screen-form [hidden]{display:none}.screen-form [data-setting]{grid-column:1/-1}.screen-form .data-table input{min-width:110px}.screen-form datalist{display:none}@media(max-width:760px){.wf-facts{grid-template-columns:1fr;gap:6px}.wf-facts dd{margin-bottom:12px}.wf-steps li{flex:1;min-width:100px}.wf-action{flex:1;min-width:140px;text-align:center}}

/* Central company configuration */
.config-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}.config-menu{background:var(--color-surface);border:1px solid var(--color-border);padding:16px}.config-menu section{margin-top:20px}.config-menu h2{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin:0 8px 8px}.config-menu a{display:block;padding:9px 10px;text-decoration:none;border-radius:3px}.config-menu a[aria-current=page]{background:var(--color-brand);color:var(--color-on-dark)}.config-content{min-width:0}.config-content>.heading{margin-top:0}.config-group{margin-bottom:28px}.config-group>h2{font-size:19px;margin-top:0}.config-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.config-card{display:flex;flex-direction:column;gap:9px;background:var(--color-surface);border:1px solid var(--color-border);padding:20px;text-decoration:none}.config-card:hover{border-color:var(--color-primary);background:var(--color-stripe)}.config-card span{color:var(--color-text-muted);font-size:14px;line-height:1.5}.config-content .admin-layout{grid-template-columns:minmax(180px,1fr) minmax(0,2fr)}
@media(max-width:1050px){.config-content .admin-layout{grid-template-columns:1fr}.config-cards{grid-template-columns:1fr}}
@media(max-width:700px){.config-layout{grid-template-columns:1fr}.config-menu{display:flex;gap:12px;overflow-x:auto;padding:12px}.config-menu>section{margin:0;min-width:180px}.config-menu>a{align-self:start}.config-menu h2{white-space:nowrap}.config-menu a{white-space:nowrap}.config-content .screen-form{grid-template-columns:1fr}}
