/*
 * FastPanel 0.6.65 — canonical RTL list records.
 * This is the final cascade owner for user, order, invoice, transaction and
 * dashboard record geometry. Keep selectors scoped to record surfaces.
 */

.expandable-user-row,
.expandable-order-row,
.finance-row,
.dashboard-accordion > article,
.dashboard-simple-list > button,
.compact-resource-card,
.directory-row {
    direction: rtl;
    text-align: right;
}

.expandable-user-summary,
.expandable-order-summary,
.finance-row,
.dashboard-row-summary,
.dashboard-row-detail,
.dashboard-simple-list > button,
.compact-resource-card,
.compact-resource-card *,
.directory-row,
.directory-row * {
    text-align: right;
}

.expandable-user-summary > *,
.expandable-order-summary > *,
.finance-row > *,
.dashboard-row-summary > *,
.dashboard-row-detail > *,
.dashboard-simple-list > button > * {
    min-width: 0;
}

/* Every visible order label/value is a self-contained, readable box. */
.expandable-order-row {
    position: relative;
    border-color: color-mix(in srgb, #7c6cff 30%, var(--border));
    background:
        radial-gradient(circle at 0 0, rgba(124, 108, 255, .12), transparent 34%),
        linear-gradient(145deg, color-mix(in srgb, var(--surface) 92%, #182a4a), var(--surface));
}

.expandable-order-row:nth-child(3n + 2) {
    border-color: color-mix(in srgb, #27b8a5 34%, var(--border));
    background:
        radial-gradient(circle at 0 0, rgba(39, 184, 165, .12), transparent 34%),
        linear-gradient(145deg, color-mix(in srgb, var(--surface) 92%, #123a39), var(--surface));
}

.expandable-order-row:nth-child(3n) {
    border-color: color-mix(in srgb, #efaa55 32%, var(--border));
    background:
        radial-gradient(circle at 0 0, rgba(239, 170, 85, .11), transparent 34%),
        linear-gradient(145deg, color-mix(in srgb, var(--surface) 92%, #40301d), var(--surface));
}

.expandable-order-summary {
    gap: 10px;
}

.expandable-order-summary > span,
.expandable-order-summary > em {
    align-self: stretch;
    display: grid;
    align-content: center;
    gap: 3px;
    padding: 9px 11px;
    border: 1px solid color-mix(in srgb, var(--border-strong) 78%, transparent);
    border-radius: 11px;
    background: color-mix(in srgb, var(--surface-2) 82%, transparent);
    line-height: 1.55;
}

.expandable-order-summary > em {
    place-items: center;
    min-height: 42px;
    white-space: normal;
}

.expandable-order-summary small,
.finance-row small,
.dashboard-row-summary small {
    color: var(--muted);
    font-size: clamp(.68rem, 1.5vw, .78rem);
}

.expandable-order-summary b,
.expandable-order-summary strong,
.expandable-order-summary em {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    overflow-wrap: anywhere;
    font-size: clamp(.74rem, 1.7vw, .9rem);
}

.expandable-order-detail .catalog-facts > span,
.dashboard-row-detail > span {
    border: 1px solid color-mix(in srgb, var(--border-strong) 72%, transparent);
    background: color-mix(in srgb, var(--surface-2) 86%, transparent);
}

/* Invoice and transaction records use boxed cells, never loose labels. */
.finance-ledger {
    direction: rtl;
}

.finance-row {
    grid-template-columns: minmax(190px, 1.35fr) minmax(130px, .7fr) minmax(105px, .55fr) 42px;
    gap: 10px;
    padding: 12px;
    border-inline-start: 4px solid color-mix(in srgb, var(--accent) 70%, #54d6be);
}

.finance-row > div:first-child,
.finance-row > strong,
.finance-row > span.badge {
    align-self: stretch;
    display: grid;
    align-content: center;
    gap: 3px;
    min-height: 58px;
    margin: 0;
    padding: 9px 11px;
    border: 1px solid var(--border);
    border-radius: 11px;
    background: color-mix(in srgb, var(--surface-2) 84%, transparent);
    overflow-wrap: anywhere;
    white-space: normal;
}

.finance-row > span.badge {
    place-items: center;
    font-size: clamp(.7rem, 1.5vw, .82rem);
}

.finance-row > strong {
    color: var(--text);
    font-size: clamp(.78rem, 1.7vw, 1rem);
}

.finance-row > button[data-context-menu-trigger] {
    align-self: stretch;
    min-height: 58px;
    border-radius: 11px;
}

/* Dashboard cards inherit the same order identity and right-aligned cells. */
.dashboard-list-card:has(.dashboard-accordion) {
    overflow: hidden;
    background:
        radial-gradient(circle at 0 0, rgba(124, 108, 255, .1), transparent 32%),
        linear-gradient(145deg, var(--surface), color-mix(in srgb, var(--surface-2) 88%, #1f1744));
}

.dashboard-accordion > article {
    border-inline-start: 3px solid color-mix(in srgb, #7c6cff 70%, var(--accent));
}

.dashboard-accordion > article:nth-child(even) {
    border-inline-start-color: #27b8a5;
}

.dashboard-row-summary > span,
.dashboard-row-summary > strong,
.dashboard-row-summary > em {
    padding: 8px 10px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: color-mix(in srgb, var(--surface-2) 82%, transparent);
    overflow-wrap: anywhere;
    white-space: normal;
}

/* Dashboard coloured widgets always read from the RTL start edge. */
.revenue-summary-card,
.operations-kpi-card,
.kpi-card {
    direction: rtl;
    text-align: right;
    justify-items: start;
}

.revenue-summary-card > *,
.operations-kpi-card > *,
.kpi-card > * {
    text-align: right;
}

html[data-theme="light"] .expandable-order-row,
html[data-theme="light"] .finance-row,
html[data-theme="light"] .dashboard-list-card:has(.dashboard-accordion) {
    background-color: #fff;
}

html[data-theme="light"] .expandable-order-summary > span,
html[data-theme="light"] .expandable-order-summary > em,
html[data-theme="light"] .finance-row > div:first-child,
html[data-theme="light"] .finance-row > strong,
html[data-theme="light"] .finance-row > span.badge,
html[data-theme="light"] .dashboard-row-summary > span,
html[data-theme="light"] .dashboard-row-summary > strong,
html[data-theme="light"] .dashboard-row-summary > em {
    background: #f5f8fc;
    border-color: #cfdae7;
    color: #142135;
}

@media (max-width: 760px) {
    .expandable-order-summary {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 30px !important;
        gap: 7px;
        padding: 10px;
    }

    .expandable-order-summary > span {
        grid-column: auto !important;
        min-height: 58px;
        padding: 8px 9px;
    }

    .expandable-order-summary > span:first-child {
        grid-column: 1 / 3 !important;
    }

    .expandable-order-summary > em {
        grid-column: 1 / 3 !important;
        width: 100%;
    }

    .expandable-order-summary > i {
        grid-column: 3 !important;
        grid-row: 1 !important;
        align-self: center;
        justify-self: center;
    }

    .expandable-order-summary small,
    .expandable-order-summary b,
    .expandable-order-summary strong,
    .expandable-order-summary em {
        font-size: clamp(.68rem, 3.15vw, .84rem);
        line-height: 1.55;
    }

    .finance-row {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 7px;
        padding: 10px;
    }

    .finance-row > div:first-child {
        grid-column: 1 / -1;
    }

    .finance-row > strong,
    .finance-row > span.badge {
        grid-column: auto;
        min-height: 54px;
        font-size: clamp(.7rem, 3.1vw, .86rem);
    }

    .finance-row > button[data-context-menu-trigger] {
        grid-column: 1 / -1;
        min-height: 42px;
    }

    .dashboard-row-summary {
        grid-template-columns: minmax(0, 1fr) 28px !important;
        gap: 7px;
        padding: 9px;
    }

    .dashboard-row-summary > span,
    .dashboard-row-summary > strong,
    .dashboard-row-summary > em {
        grid-column: 1 !important;
        width: 100%;
        font-size: clamp(.68rem, 3.15vw, .84rem);
    }

    .dashboard-row-summary > i {
        grid-column: 2 !important;
        grid-row: 1 !important;
    }

    .dashboard-row-detail {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 390px) {
    .expandable-order-summary,
    .finance-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .expandable-order-summary > span,
    .expandable-order-summary > span:first-child,
    .expandable-order-summary > em,
    .finance-row > div:first-child,
    .finance-row > strong,
    .finance-row > span.badge,
    .finance-row > button[data-context-menu-trigger] {
        grid-column: 1 !important;
    }

    .expandable-order-summary > i {
        position: absolute;
        inset-block-start: 14px;
        inset-inline-end: 12px;
    }
}
