@import '_content/Logisoft.DesignSystem/Logisoft.DesignSystem.op20i7g3by.bundle.scp.css';

/* /Components/Layout/NavMenu.razor.rz.scp.css */
.nova-nav-coming-soon[b-kdyf507bl9] {
    margin-top: 16px;
}

.nova-nav-coming-soon__summary[b-kdyf507bl9] {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    user-select: none;
    list-style: none;
    padding: 4px 12px;
    color: var(--nova-text-muted);
    transition: color var(--nova-transition);
}

.nova-nav-coming-soon__summary[b-kdyf507bl9]::-webkit-details-marker {
    display: none;
}

.nova-nav-coming-soon__summary:hover[b-kdyf507bl9] {
    color: var(--nova-text-primary);
}

.nova-nav-coming-soon__chevron[b-kdyf507bl9] {
    display: inline-block;
    font-size: 10px;
    line-height: 1;
    transition: transform var(--nova-transition);
}

.nova-nav-coming-soon[open] .nova-nav-coming-soon__chevron[b-kdyf507bl9] {
    transform: rotate(90deg);
}
/* /Components/Reports/TransportProfitReportGrid.razor.rz.scp.css */
/* Faithful Transport Profit report, rendered as an interactive in-page grid (search + group-level
   paging) while preserving the legacy design: per-voyage groups, 14 columns, FX line, TOTAL rows.
   App-specific document grid; scoped CSS, token-based. */

.tpg-empty[b-e0l35ctutm] {
    padding: 32px;
    text-align: center;
    color: var(--nova-text-muted, #666);
    font-size: 13px;
}

.tpg-summary[b-e0l35ctutm] {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 40px;
    padding: 16px 20px;
    margin-bottom: 20px;
    border: 1px solid var(--nova-canvas-border, rgba(0, 0, 0, 0.08));
    border-radius: 8px;
    background: var(--nova-canvas-panel, #f7f8fa);
}

.tpg-kpi[b-e0l35ctutm] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.tpg-kpi-label[b-e0l35ctutm] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--nova-text-muted, #666);
}

.tpg-kpi-value[b-e0l35ctutm] {
    font-size: 18px;
    font-weight: 800;
    color: var(--nova-text, #111);
    font-variant-numeric: tabular-nums;
}

.tpg-toolbar[b-e0l35ctutm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.tpg-count[b-e0l35ctutm] {
    font-size: 12px;
    color: var(--nova-text-muted, #666);
    white-space: nowrap;
}

.tpg-group-meta[b-e0l35ctutm] {
    display: inline-flex;
    align-items: baseline;
    gap: 16px;
}

.tpg-group-profit[b-e0l35ctutm] {
    font-size: 13px;
    font-weight: 800;
    color: var(--nova-text, #111);
    font-variant-numeric: tabular-nums;
}

/* Losses are the only value coloured — severity only on the problem. */
.tpg-neg[b-e0l35ctutm] {
    color: var(--nova-severity-critical-text, #b91c1c);
}

/* Print mode (the /print page, both on-screen preview AND when printing): show every column with FULL
   numbers (no truncation) and no horizontal scroll. overflow:visible removes the scroll container;
   numbers stay nowrap (intact figures) while headers wrap so columns size to the numbers; width:100%
   fills the landscape page (@page landscape lives in app.css). Font is shrunk so all 14 columns fit. */
.tpg-print .tpg-scroll[b-e0l35ctutm] { overflow: visible; border: none; border-radius: 0; }
.tpg-print .tpg-table[b-e0l35ctutm] { font-size: 9px; width: 100%; }
.tpg-print .tpg-table th[b-e0l35ctutm], .tpg-print .tpg-table td[b-e0l35ctutm] { padding: 2px 5px; }
.tpg-print .tpg-table td[b-e0l35ctutm] { white-space: nowrap; }
.tpg-print .tpg-table th[b-e0l35ctutm] { white-space: normal; }

@media print {
    .tpg-toolbar[b-e0l35ctutm], .tpg-pager[b-e0l35ctutm] { display: none; }
    .tpg-summary[b-e0l35ctutm], .tpg-group[b-e0l35ctutm] { page-break-inside: avoid; }
    .tpg-print .tpg-table[b-e0l35ctutm] { font-size: 8px; }
}

.tpg-search[b-e0l35ctutm] {
    flex: 1;
    max-width: 420px;
}

.tpg-currency[b-e0l35ctutm] {
    font-size: 12px;
    color: var(--nova-text-muted, #666);
}

.tpg-currency strong[b-e0l35ctutm] {
    color: var(--nova-text, #111);
}

.tpg-group[b-e0l35ctutm] {
    margin-bottom: 22px;
}

.tpg-group-head[b-e0l35ctutm] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 4px;
}

.tpg-group-title[b-e0l35ctutm] {
    font-size: 13px;
    font-weight: 800;
    color: var(--nova-text, #111);
}

.tpg-fx[b-e0l35ctutm] {
    font-size: 11px;
    font-weight: 600;
    color: var(--nova-text-muted, #666);
    white-space: pre;
}

.tpg-scroll[b-e0l35ctutm] {
    overflow-x: auto;
    border: 1px solid var(--nova-canvas-border, rgba(0, 0, 0, 0.08));
    border-radius: 8px;
}

.tpg-table[b-e0l35ctutm] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
    font-variant-numeric: tabular-nums;
}

.tpg-table th[b-e0l35ctutm] {
    font-size: 10px;
    font-weight: 700;
    color: var(--nova-text, #111);
    background: var(--nova-canvas-panel, #eef0f3);
    border-bottom: 1px solid var(--nova-canvas-border, rgba(0, 0, 0, 0.12));
    padding: 6px 10px;
    white-space: nowrap;
    vertical-align: bottom;
}

.tpg-table td[b-e0l35ctutm] {
    padding: 5px 10px;
    border-bottom: 1px solid var(--nova-canvas-border, rgba(0, 0, 0, 0.05));
    white-space: nowrap;
    color: var(--nova-text, #111);
}

.tpg-l[b-e0l35ctutm] { text-align: left; }
.tpg-r[b-e0l35ctutm] { text-align: right; }

.tpg-total td[b-e0l35ctutm] {
    font-weight: 800;
    border-top: 1px solid var(--nova-canvas-border, rgba(0, 0, 0, 0.22));
    border-bottom: none;
}

/* Credit-note line: subordinate to its POD row, muted + italic so it reads as an adjustment. */
.tpg-credit td[b-e0l35ctutm] {
    color: var(--nova-text-muted, #666);
    font-style: italic;
}

.tpg-credit .tpg-l:first-child[b-e0l35ctutm] {
    padding-left: 20px;
}

/* Uninvoiced line: subordinate to its POD row like the credit line, but rendered as an informational
   (not adjustment) figure — muted, not italic, since it is a positive amount that is deliberately NOT
   in Income or Profit. */
.tpg-uninvoiced td[b-e0l35ctutm] {
    color: var(--nova-text-muted, #666);
}

.tpg-uninvoiced .tpg-l:first-child[b-e0l35ctutm] {
    padding-left: 20px;
}

/* Uninvoiced summary KPI: muted vs the hard profit numbers so it reads as a secondary signal. */
.tpg-uninvoiced-value[b-e0l35ctutm] {
    color: var(--nova-text-muted, #666);
}

.tpg-grand .tpg-group-title[b-e0l35ctutm] {
    color: var(--nova-primary, #146EF4);
}

.tpg-pager[b-e0l35ctutm] {
    margin: 8px 0 20px;
}
