@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300..600&family=IBM+Plex+Sans:wght@300;400;500;600&family=IBM+Plex+Mono:wght@300;400;500&display=swap");html{--lumo-base-color: #f5f1e8;--lumo-tint: #ece6d6;--lumo-shade: #14130f;--lumo-contrast-5pct: rgba(20,19,15,0.04);--lumo-contrast-10pct: rgba(20,19,15,0.08);--lumo-contrast-20pct: rgba(20,19,15,0.16);--lumo-contrast-30pct: rgba(20,19,15,0.24);--lumo-contrast-50pct: rgba(20,19,15,0.45);--lumo-contrast-60pct: rgba(20,19,15,0.6);--lumo-contrast-80pct: rgba(20,19,15,0.78);--lumo-contrast: #14130f;--lumo-body-text-color: #14130f;--lumo-secondary-text-color: #6e6a5d;--lumo-tertiary-text-color: #8c8978;--lumo-disabled-text-color: rgba(20,19,15,0.35);--lumo-header-text-color: #14130f;--lumo-primary-text-color: #b8410c;--lumo-primary-color: #b8410c;--lumo-primary-color-50pct: rgba(184,65,12,0.5);--lumo-primary-color-10pct: rgba(184,65,12,0.1);--lumo-primary-contrast-color: #f5f1e8;--lumo-error-text-color: #8b2c20;--lumo-error-color: #8b2c20;--lumo-error-color-10pct: rgba(139,44,32,0.1);--lumo-error-color-50pct: rgba(139,44,32,0.5);--lumo-success-text-color: #4f6f3d;--lumo-success-color: #4f6f3d;--lumo-success-color-10pct: rgba(79,111,61,0.1);--lumo-success-color-50pct: rgba(79,111,61,0.5);--lumo-warning-text-color: #a87520;--lumo-warning-color: #a87520;--lumo-font-family: "IBM Plex Sans",system-ui,sans-serif;--display-font: "Fraunces","Iowan Old Style",Georgia,serif;--mono-font: "IBM Plex Mono",ui-monospace,monospace;--lumo-font-size-xxxl: 2.75rem;--lumo-font-size-xxl: 2rem;--lumo-font-size-xl: 1.5rem;--lumo-font-size-l: 1.125rem;--lumo-font-size-m: 0.875rem;--lumo-font-size-s: 0.8125rem;--lumo-font-size-xs: 0.75rem;--lumo-line-height-m: 1.45;--lumo-space-xs: 4px;--lumo-space-s: 8px;--lumo-space-m: 14px;--lumo-space-l: 22px;--lumo-space-xl: 36px;--lumo-size-xs: 24px;--lumo-size-s: 28px;--lumo-size-m: 36px;--lumo-size-l: 44px;--lumo-size-xl: 56px;--lumo-border-radius-m: 2px;--lumo-border-radius-l: 3px;--lumo-border-radius-s: 1px;--lumo-box-shadow-xs: 0 1px 2px rgba(20,19,15,0.08);--lumo-box-shadow-s: 0 2px 6px rgba(20,19,15,0.08);--lumo-box-shadow-m: 0 6px 20px -8px rgba(20,19,15,0.18);--lumo-box-shadow-l: 0 20px 40px -24px rgba(20,19,15,0.28);--lumo-box-shadow-xl: 0 40px 80px -32px rgba(20,19,15,0.4);--codig-color: #1e3a5f;--codig-soft: #cfd9e4;--netstone-color: #4f6f3d;--netstone-soft: #d6dfc8;--ochre: #a87520;--ochre-soft: #ebdcb6;--crimson: #8b2c20;--crimson-soft: #ecc8c1;--slate: #5b5a52;--slate-soft: #ddd9c9;--paper-2: #ece6d6;--paper-3: #e0d9c7;--rule: #d8cfb8;--rule-soft: #e6dfca}body{background: var(--lumo-base-color);position: relative}body::before{content: "";position: fixed;inset: 0;pointer-events: none;background-image: radial-gradient(rgba(20,19,15,0.035) 1px,transparent 1px);background-size: 3px 3px;z-index: 0}h1,h2,h3,h4,h5,h6{font-family: var(--display-font);font-weight: 350;letter-spacing: -0.01em;color: var(--lumo-header-text-color)}.numeric,vaadin-grid-cell-content.numeric{font-family: var(--mono-font);font-variant-numeric: tabular-nums;font-feature-settings: "tnum"}vaadin-grid{background: var(--lumo-base-color);--vaadin-grid-cell-padding: 10px 14px;border: 1px solid rgba(20,19,15,0.1);border-radius: 2px}vaadin-grid::part(header-cell){font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.14em;text-transform: uppercase;color: var(--lumo-secondary-text-color);background: var(--paper-2);border-bottom: 1px solid rgba(20,19,15,0.1)}vaadin-grid::part(row):hover{background: var(--paper-2)}vaadin-grid::part(cell){border-bottom: 1px solid rgba(20,19,15,0.06)}vaadin-button[theme~="primary"]{background: var(--lumo-shade);color: var(--lumo-base-color);font-weight: 500;border-radius: 2px}vaadin-button[theme~="primary"]:hover{background: var(--lumo-primary-color)}vaadin-button{font-weight: 500}vaadin-side-nav{font-size: 13px}vaadin-side-nav-item::part(item):hover{background: var(--paper-2)}vaadin-side-nav-item[active]::part(item){background: var(--lumo-base-color);box-shadow: inset 3px 0 0 var(--lumo-primary-color)}vaadin-app-layout::part(drawer){background: var(--lumo-tint);border-right: 1px solid var(--rule)}vaadin-app-layout::part(navbar){background: rgba(245,241,232,0.92);backdrop-filter: blur(8px);border-bottom: 1px solid var(--rule)}vaadin-dialog-overlay::part(overlay){background: var(--lumo-base-color);border: 1px solid rgba(20,19,15,0.15);border-radius: 3px;box-shadow: var(--lumo-box-shadow-xl)}vaadin-dialog-overlay::part(backdrop){background: rgba(20,19,15,0.4)}vaadin-text-field::part(label),vaadin-text-area::part(label),vaadin-combo-box::part(label),vaadin-date-picker::part(label),vaadin-number-field::part(label),vaadin-select::part(label){font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.14em;text-transform: uppercase;color: var(--lumo-secondary-text-color)}vaadin-text-field::part(input-field),vaadin-text-area::part(input-field),vaadin-combo-box::part(input-field),vaadin-date-picker::part(input-field),vaadin-number-field::part(input-field),vaadin-select::part(input-field){background: var(--lumo-base-color);border: 1px solid rgba(20,19,15,0.12);border-radius: 2px;box-shadow: none}vaadin-text-field[focused]::part(input-field),vaadin-combo-box[focused]::part(input-field),vaadin-date-picker[focused]::part(input-field),vaadin-number-field[focused]::part(input-field){border-color: var(--lumo-primary-color);box-shadow: 0 0 0 1px var(--lumo-primary-color)}.pill{display: inline-flex;align-items: center;gap: 4px;padding: 2px 8px;border-radius: 999px;font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.06em;text-transform: uppercase;white-space: nowrap;line-height: 1.6}.pill.codig{color: var(--codig-color);background: var(--codig-soft)}.pill.netstone{color: var(--netstone-color);background: var(--netstone-soft)}.pill.draft{color: var(--slate);background: var(--slate-soft)}.pill.validated{color: var(--netstone-color);background: var(--netstone-soft)}.pill.confirmed{color: var(--netstone-color);background: var(--netstone-soft)}.pill.production{color: var(--codig-color);background: var(--codig-soft)}.pill.ready{color: var(--netstone-color);background: var(--netstone-soft)}.pill.delivered{color: var(--netstone-color);background: var(--netstone-soft)}.pill.invoiced{color: var(--netstone-color);background: var(--netstone-soft)}.pill.sent{color: var(--slate);background: var(--slate-soft)}.pill.received{color: var(--netstone-color);background: var(--netstone-soft)}.pill.issued{color: var(--codig-color);background: var(--codig-soft)}.pill.paid{color: var(--netstone-color);background: var(--netstone-soft)}.pill.overdue{color: var(--crimson);background: var(--crimson-soft)}.pill.disputed{color: var(--crimson);background: var(--crimson-soft)}.pill.incident{color: var(--crimson);background: var(--crimson-soft)}.pill.prepared{color: var(--slate);background: var(--slate-soft)}.pill.shipped{color: var(--codig-color);background: var(--codig-soft)}.pill.transit{color: var(--codig-color);background: var(--codig-soft)}.pill.arrived{color: var(--codig-color);background: var(--codig-soft)}.pill.inspected{color: var(--netstone-color);background: var(--netstone-soft)}.pill.verified{color: var(--netstone-color);background: var(--netstone-soft)}.pill.warn{color: var(--ochre);background: var(--ochre-soft)}.pill.cancelled{color: var(--lumo-tertiary-text-color);background: var(--paper-3)}.stripe-codig{background: var(--codig-color)}.stripe-netstone{background: var(--netstone-color)}.mini-flow{display: inline-grid;grid-template-columns: repeat(4,12px);gap: 2px;align-items: center}.mini-flow>span{height: 4px;background: var(--rule);border-radius: 1px}.mini-flow>span.done{background: var(--netstone-color)}.mini-flow>span.curr{background: var(--lumo-primary-color)}.mini-flow>span.crit{background: var(--crimson)}.doc-ref{font-family: var(--mono-font);font-size: 12px}.doc-ref b{color: var(--lumo-body-text-color);font-weight: 500}.doc-ref span{color: var(--lumo-tertiary-text-color)}.eyebrow{font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.18em;text-transform: uppercase;color: var(--lumo-tertiary-text-color)}.maritime-page{max-width: 1220px}.maritime-panel,.maritime-chart{background: rgba(245,241,232,0.88);border: 1px solid var(--rule);padding: 16px 18px;box-shadow: var(--lumo-box-shadow-xs);width: 100%;box-sizing: border-box}.maritime-panel p,.maritime-chart p{margin: 0;color: var(--lumo-secondary-text-color)}.maritime-chart-host{min-height: 360px;width: 100%;overflow: visible}.maritime-empty{color: var(--lumo-secondary-text-color);min-height: 24px}.maritime-legend{display: flex;flex-wrap: wrap;gap: 10px 16px;margin-bottom: 12px}.maritime-legend-item{display: inline-flex;align-items: center;gap: 8px;font-family: var(--mono-font);font-size: 11px;color: var(--lumo-secondary-text-color)}.maritime-legend-swatch{width: 12px;height: 12px;flex: 0 0 12px}.maritime-manual-grid{width: 100%}.maritime-manual-details{width: 100%}.maritime-manual-details::part(summary){font-family: var(--mono-font);font-size: 11px;letter-spacing: 0.08em;text-transform: uppercase;color: var(--lumo-secondary-text-color)}.display-title{font-family: var(--display-font);font-weight: 350;letter-spacing: -0.02em;line-height: 1;margin: 0}.display-title em{font-style: italic;color: var(--lumo-primary-color)}.dash-hero{padding: 32px 32px 28px;display: grid;grid-template-columns: 1fr auto;gap: 32px;border-bottom: 1px solid var(--rule);align-items: end}.dash-hero .title{font-family: var(--display-font);font-weight: 350;font-size: 56px;line-height: 1;letter-spacing: -0.025em;margin: 4px 0 0}.dash-hero .sub{margin-top: 12px;font-size: 14px;color: var(--lumo-secondary-text-color);max-width: 58ch}.dash-hero .actions{display: flex;gap: 8px}.kpi-strip{display: grid;grid-template-columns: repeat(4,1fr);padding: 22px 32px;border-bottom: 1px solid var(--rule)}.kpi-tile{padding: 4px 22px;border-left: 1px solid var(--rule)}.kpi-tile:first-child{padding-left: 0;border-left: 0}.kpi-tile .label{font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.18em;text-transform: uppercase;color: var(--lumo-tertiary-text-color);margin-bottom: 8px}.kpi-tile .value{font-family: var(--display-font);font-weight: 350;font-size: 32px;line-height: 1;letter-spacing: -0.01em;display: flex;align-items: baseline;gap: 6px}.kpi-tile .value .unit{font-family: var(--mono-font);font-size: 13px;color: var(--lumo-tertiary-text-color)}.kpi-tile .delta{margin-top: 6px;font-family: var(--mono-font);font-size: 11px;color: var(--lumo-tertiary-text-color)}.kpi-tile .delta.crit{color: var(--crimson)}.kpi-tile .delta.ok{color: var(--netstone-color)}.dash-grid{display: grid;grid-template-columns: 1.35fr 1fr}.dash-panel{padding: 28px 32px;border-bottom: 1px solid var(--rule)}.dash-panel + .dash-panel{border-left: 1px solid var(--rule)}.dash-panel .head{display: flex;align-items: baseline;justify-content: space-between;margin-bottom: 18px}.dash-panel .head h2{font-family: var(--display-font);font-weight: 400;font-size: 22px;letter-spacing: -0.01em;margin: 0}.dash-panel .head h2 em{font-style: italic;color: var(--lumo-tertiary-text-color);font-weight: 350}.dash-panel .head .meta{font-family: var(--mono-font);font-size: 11px;color: var(--lumo-tertiary-text-color);align-self: flex-start;margin-top: 4px;text-align: right}.dash-panel .head .sub{display: block;font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.14em;text-transform: uppercase;color: var(--lumo-tertiary-text-color);margin-top: 6px}.queue-row{display: grid;grid-template-columns: 4px 96px 1fr auto;gap: 14px;padding: 12px 4px 12px 0;border-bottom: 1px solid var(--rule-soft);align-items: center}.queue-row:last-child{border-bottom: 0}.queue-row:hover{background: var(--paper-2);cursor: pointer}.queue-row .pri{height: 100%;min-height: 40px;align-self: stretch}.queue-row .pri.crit{background: var(--crimson)}.queue-row .pri.warn{background: var(--ochre)}.queue-row .pri.info{background: var(--codig-color)}.queue-row .ref-id{font-family: var(--mono-font);font-size: 11px;color: var(--lumo-tertiary-text-color)}.queue-row .ref-id b{color: var(--lumo-body-text-color);font-weight: 500}.queue-row .text strong{font-size: 13px;font-weight: 500}.queue-row .text span{display: block;font-family: var(--mono-font);font-size: 11px;color: var(--lumo-tertiary-text-color);margin-top: 1px}.ledger-section{padding: 28px 32px 12px}.ledger-section h2{font-family: var(--display-font);font-weight: 350;font-size: 26px;letter-spacing: -0.01em;margin: 0 0 14px}.ledger-section h2 em{font-style: italic;color: var(--lumo-tertiary-text-color)}.dash-ledger{margin: 0 32px 28px;border: 1px solid var(--rule);border-radius: 2px;background: var(--lumo-base-color);overflow: hidden}.dash-ledger .row,.dash-ledger .head-row{display: grid;grid-template-columns: 4px 90px 130px 1fr 120px 110px 90px 110px;gap: 12px;align-items: center;padding: 12px 14px}.dash-ledger .head-row{background: var(--paper-2);border-bottom: 1px solid var(--rule);font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.12em;text-transform: uppercase;color: var(--lumo-tertiary-text-color)}.dash-ledger .row{border-bottom: 1px solid var(--rule-soft)}.dash-ledger .row:last-child{border-bottom: 0}.dash-ledger .row:hover{background: var(--paper-2);cursor: pointer}.dash-ledger .stripe{align-self: stretch;height: 100%}.dash-ledger .num{font-family: var(--mono-font);font-size: 12px;font-feature-settings: "tnum";font-variant-numeric: tabular-nums;text-align: right}.dash-ledger .num.red{color: var(--crimson)}.dash-ledger .right{text-align: right}.dash-ledger .doc-kind{font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.12em;text-transform: uppercase;color: var(--lumo-secondary-text-color)}.dash-ledger .party strong{font-weight: 500}.dash-ledger .party em{font-family: var(--mono-font);font-style: normal;font-size: 11px;color: var(--lumo-tertiary-text-color)}.dash-empty{padding: 30px 0;text-align: center;font-style: italic;color: var(--lumo-tertiary-text-color)}.heat{display: grid;grid-template-columns: 70px 1fr;gap: 6px 12px;margin-top: 22px;font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.12em;text-transform: uppercase;color: var(--lumo-tertiary-text-color)}.heat .row{display: grid;grid-template-columns: repeat(28,1fr);gap: 2px}.heat .row span{aspect-ratio: 1;background: var(--paper-3);border-radius: 1px}.heat .row span.l1{background: #d8d4be}.heat .row span.l2{background: #c2b793}.heat .row span.l3{background: #a87520}.heat .row span.l4{background: var(--lumo-primary-color)}.heat .axis{align-self: center}.heat .row span{cursor: default}.heat-foot{display: grid;grid-template-columns: repeat(28,1fr);margin-top: 10px;font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.1em;color: var(--lumo-tertiary-text-color)}.heat-foot>span{grid-column: span 7;text-align: left}.dossier-matrix{padding: 14px 0 18px;background: var(--paper-2);border-bottom: 1px solid var(--rule);border-top: 1px solid var(--rule)}.dossier-matrix .head{display: flex;justify-content: space-between;align-items: baseline;padding: 0 28px 10px}.dossier-matrix .title{font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.2em;text-transform: uppercase;color: var(--lumo-tertiary-text-color)}.dossier-matrix .hint{font-family: var(--mono-font);font-size: 11px;color: var(--lumo-tertiary-text-color)}.dossier-matrix .hint b{color: var(--lumo-body-text-color);font-weight: 500}.dossier-matrix .grid{display: grid;grid-template-columns: 84px repeat(5,1fr);padding: 0 28px}.dossier-matrix .col-head{font-family: var(--mono-font);font-size: 9px;letter-spacing: 0.16em;text-transform: uppercase;color: var(--lumo-tertiary-text-color);text-align: center;padding-bottom: 8px}.dossier-matrix .row-head{font-family: var(--display-font);font-size: 14px;font-weight: 400;align-self: center;padding-right: 10px;display: flex;align-items: center;gap: 6px}.dossier-matrix .row-head .swatch{width: 7px;height: 7px;border-radius: 50%}.dossier-matrix .row-head .swatch.codig{background: var(--codig-color)}.dossier-matrix .row-head .swatch.netstone{background: var(--netstone-color)}.dossier-matrix .cell{position: relative;background: var(--lumo-base-color);border: 1px solid var(--rule);margin: 0 -1px -1px 0;padding: 6px 10px 6px;min-height: 54px;display: flex;flex-direction: column;gap: 2px;outline: none}.dossier-matrix .cell.actionable{cursor: pointer}.dossier-matrix .cell.actionable:hover{background: var(--paper-2);border-color: var(--lumo-shade);z-index: 2}.dossier-matrix .cell:focus-visible{border-color: var(--lumo-primary-color);box-shadow: 0 0 0 2px var(--lumo-primary-color-10pct);z-index: 3}.dossier-matrix .cell.current{border-color: var(--lumo-primary-color);box-shadow: 0 0 0 1px var(--lumo-primary-color) inset;z-index: 1}.dossier-matrix .cell.current::before{content: "";position: absolute;top: -1px;left: -1px;right: -1px;height: 2px;background: var(--lumo-primary-color)}.dossier-matrix .cell.empty{background: var(--paper-2);color: var(--lumo-tertiary-text-color)}.dossier-matrix .cell-ref{font-family: var(--mono-font);font-size: 11px;font-weight: 500;color: var(--lumo-body-text-color);line-height: 1.2}.dossier-matrix .cell.empty .cell-ref{color: var(--lumo-tertiary-text-color);font-style: italic}.dossier-matrix .cell-subtitle{font-size: 10px;color: var(--lumo-secondary-text-color);line-height: 1.2;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.dossier-matrix .cell-status{margin-top: auto;display: flex;align-items: center;gap: 6px}.dossier-matrix .cell-status .pill{font-size: 9px;padding: 1px 6px}@keyframes dash-rise{from{opacity: 0;transform: translateY(8px)}to{opacity: 1;transform: translateY(0)}}.dash-reveal>*{opacity: 0;animation: dash-rise 0.6s cubic-bezier(0.2,0.7,0.2,1) forwards}.dash-reveal>*:nth-child(1){animation-delay: 0.05s}.dash-reveal>*:nth-child(2){animation-delay: 0.12s}.dash-reveal>*:nth-child(3){animation-delay: 0.20s}.dash-reveal>*:nth-child(4){animation-delay: 0.28s}.dash-reveal>*:nth-child(5){animation-delay: 0.36s}.cmd-palette-overlay::part(overlay){background: var(--lumo-base-color);border: 1px solid var(--lumo-shade);border-radius: 4px;box-shadow: 0 40px 80px -20px rgba(20,19,15,0.4);padding: 0;min-width: 600px;max-width: 92vw}.cmd-palette{display: flex;flex-direction: column}.cmd-palette-bar{display: flex;align-items: center;gap: 12px;padding: 12px 16px;border-bottom: 1px solid var(--rule)}.cmd-palette-bar .icon{font-family: var(--mono-font);color: var(--lumo-tertiary-text-color)}.cmd-palette-input::part(input-field){background: transparent;border: 0;box-shadow: none;font-family: var(--display-font);font-size: 18px}.cmd-palette-input::part(input-field):hover,.cmd-palette-input[focused]::part(input-field){border: 0;box-shadow: none}.cmd-palette-list{max-height: 380px;overflow: auto;display: flex;flex-direction: column}.cmd-palette-group{padding: 10px 16px 4px;font-family: var(--mono-font);font-size: 10px;letter-spacing: 0.18em;text-transform: uppercase;color: var(--lumo-tertiary-text-color)}.cmd-palette-item{display: grid;grid-template-columns: 22px 1fr auto;gap: 12px;align-items: center;padding: 10px 16px;font-size: 13px;cursor: pointer}.cmd-palette-item:hover,.cmd-palette-item.is-active{background: var(--paper-2);box-shadow: inset 3px 0 0 var(--lumo-primary-color)}.cmd-palette-item .label{display: block}.cmd-palette-item small{display: block;font-family: var(--mono-font);font-size: 11px;color: var(--lumo-tertiary-text-color);margin-top: 1px}.cmd-palette-foot{display: flex;gap: 18px;padding: 10px 16px;border-top: 1px solid var(--rule);background: var(--paper-2);font-family: var(--mono-font);font-size: 11px;color: var(--lumo-tertiary-text-color)}.cmd-palette-foot b{color: var(--lumo-body-text-color);font-weight: 500;margin-right: 4px}.cmd-palette-tag{font-family: var(--mono-font);font-size: 9px;letter-spacing: 0.12em;text-transform: uppercase;color: var(--lumo-tertiary-text-color);padding: 2px 6px;border: 1px solid var(--rule);border-radius: 999px;white-space: nowrap}.cmd-palette-empty{padding: 30px;text-align: center;font-style: italic;color: var(--lumo-tertiary-text-color)}