/*
 * Fondation frontend GazManager.
 * Tous les sélecteurs sont isolés sous .workspace-page afin que la migration
 * des anciens écrans puisse rester progressive et sans effet de bord.
 */
.workspace-page {
    --ui-bg: #f7f5f3;
    --ui-surface: #ffffff;
    --ui-surface-muted: #faf8f6;
    --ui-text: #292321;
    --ui-text-muted: #6f625c;
    --ui-border: #e5ddd8;
    --ui-border-strong: #d2c4bc;
    --ui-primary: #9a3516;
    --ui-primary-dark: #74250d;
    --ui-primary-soft: #fbece5;
    --ui-success: #137a52;
    --ui-success-soft: #e8f7f0;
    --ui-danger: #c43232;
    --ui-danger-soft: #fff0f0;
    --ui-warning: #9a5b00;
    --ui-sidebar: #281711;
    --ui-sidebar-muted: #c9aaa0;
    --role-ink: #eadbd5;
    --ui-radius-sm: .5rem;
    --ui-radius: .875rem;
    --ui-radius-lg: 1.125rem;
    --ui-shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 8px 24px rgba(16, 24, 40, .06);
    --ui-sidebar-width: 16.5rem;
    background: var(--ui-bg);
    color: var(--ui-text);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    min-width: 20rem;
}

.workspace-page.workspace--admin {
    --ui-primary: #9a3516;
    --ui-primary-dark: #74250d;
    --ui-primary-soft: #fbece5;
    --ui-sidebar: #281711;
    --ui-sidebar-muted: #c9aaa0;
    --role-ink: #eadbd5;
}
.workspace-page.workspace--controller {
    --ui-primary: #1f4a5c;
    --ui-primary-dark: #163844;
    --ui-primary-soft: #e7f1f4;
    --ui-sidebar: #121c22;
    --ui-sidebar-muted: #9bb0b8;
    --role-ink: #d7e6eb;
}
.workspace-page.workspace--seller {
    --ui-primary: #8a5a12;
    --ui-primary-dark: #6a450c;
    --ui-primary-soft: #f8efd9;
    --ui-sidebar: #241c12;
    --ui-sidebar-muted: #cbb48a;
    --role-ink: #f0e4c8;
}

/* Registre transversal des sorties définitives */
.permanent-output { display: grid; gap: var(--ui-space-lg, 1.25rem); }
.permanent-output__filters > form { display: grid; padding: var(--ui-card-padding, 1rem); grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: end; gap: var(--ui-space-md, .9rem); }
.permanent-output__register > .ui-table-wrap { margin: 0; }
.permanent-output__register table { min-width: 58rem; }
.permanent-output__register table small { display: block; margin-top: .2rem; color: var(--ui-text-muted); }
.permanent-output__register tr.is-cancelled { opacity: .72; }
.permanent-output__register td:nth-child(n+5):nth-child(-n+8) { text-align: right; font-variant-numeric: tabular-nums; }
.duty-positions__grid { padding: var(--ui-card-padding, 1rem); }
.catalogue-category-list > article { grid-template-columns: auto minmax(0,1fr) auto auto auto; }
.catalogue-category-list > article form { margin: 0; padding: 0; border: 0; }
.catalogue-category-list > article form .ui-button { min-height: 2.5rem; }
@media (max-width: 68.75rem) { .permanent-output__filters > form { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 42rem) {
    .cash-pool-explanation__grid { grid-template-columns: 1fr; }
    .permanent-output__filters > form { grid-template-columns: 1fr; }
    .permanent-output__filters > form .ui-button { width: 100%; }
    .permanent-output__register > .ui-card__header { align-items: flex-start; flex-direction: column; }
    .permanent-output__register > .ui-table-wrap { overflow-x: hidden; }
    .permanent-output__register table,
    .permanent-output__register tbody,
    .permanent-output__register tr,
    .permanent-output__register td { display: block; width: 100%; min-width: 0; }
    .permanent-output__register thead { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
    .permanent-output__register tbody { display: grid; padding: 1rem; gap: .85rem; }
    .permanent-output__register tbody tr { padding: .35rem .85rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface-muted); }
    .permanent-output__register .ui-table td { display: grid; min-height: 2.65rem; padding: .65rem 0; grid-template-columns: minmax(6rem, .8fr) minmax(0, 1.2fr); align-items: start; gap: .75rem; border-bottom: 1px solid var(--ui-border); text-align: right !important; overflow-wrap: anywhere; }
    .permanent-output__register .ui-table td::before { content: attr(data-label); color: var(--ui-text-muted); font-size: .68rem; font-weight: 800; letter-spacing: .035em; text-align: left; text-transform: uppercase; }
    .permanent-output__register .ui-table td:last-child { border-bottom: 0; }
    .permanent-output__register .ui-table td > :is(strong, small, span) { justify-self: end; text-align: right; }
    .duty-positions__grid { grid-template-columns: 1fr; }
    .catalogue-category-list > article { grid-template-columns: auto minmax(0,1fr) auto; }
    .catalogue-category-list > article form { grid-column: 2 / -1; }
}

/* Assistant financier : listes initiales extensibles sans limite codée. */
.opening-wizard { display: grid; overflow: hidden; gap: 0; }
.opening-wizard > .ui-form-grid, .opening-wizard > .ui-field, .opening-wizard > .ui-button { margin: var(--ui-card-padding); }
.opening-wizard > fieldset { min-width: 0; margin: 0; padding: var(--ui-card-padding); border: 0; border-top: 1px solid var(--ui-border); }
.opening-wizard > fieldset > legend { padding: 1rem 0 .25rem; color: var(--ui-text); font-size: 1.05rem; font-weight: 850; }
.opening-repeater__heading { display: flex; margin-bottom: .85rem; justify-content: space-between; align-items: center; gap: 1rem; }
.opening-repeater__heading p { margin: 0; color: var(--ui-text-muted); }
.opening-repeater__heading output { flex: 0 0 auto; padding: .4rem .65rem; border-radius: 999px; background: var(--ui-primary-soft); color: var(--ui-primary-dark); font-size: .78rem; font-weight: 800; }
.opening-repeat-list { display: grid; gap: .75rem; }
.opening-repeat-row { padding: .9rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface-muted); }
.opening-repeat-row > header { display: flex; margin-bottom: .75rem; justify-content: space-between; align-items: center; gap: .75rem; }
.opening-repeat-row__remove { min-height: 2.75rem; color: var(--ui-danger); }
.opening-repeater__add { margin-top: .85rem; min-height: 2.75rem; }
.opening-live-summary { display: grid; margin: 0 var(--ui-card-padding) var(--ui-card-padding); padding: 1rem; grid-template-columns: minmax(12rem,.65fr) minmax(0,1.35fr); align-items: center; gap: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-primary-soft); }
.opening-live-summary h2, .opening-live-summary p { margin: 0; }
.opening-live-summary dl { display: grid; margin: 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .65rem; }
.opening-live-summary dl > div { display: grid; padding: .65rem; gap: .2rem; border-radius: var(--ui-radius-sm); background: var(--ui-surface); }
.opening-live-summary dt { color: var(--ui-text-muted); font-size: .75rem; }
.opening-live-summary dd { display: grid; margin: 0; font-size: .8rem; }
.opening-live-summary dd strong { color: var(--ui-primary-dark); font-size: .95rem; }
.opening-balance { display: grid; margin: 0 var(--ui-card-padding) var(--ui-card-padding); padding: 1rem; gap: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface-muted); }
.opening-balance h2, .opening-balance p { margin: 0; }
.opening-balance h2 { font-size: .95rem; }
.opening-balance p:not(.ui-eyebrow) { margin-top: .3rem; color: var(--ui-text-muted); font-size: .65rem; }
.opening-balance p.opening-balance__hint { font-weight: 700; color: var(--ui-text); }
.opening-equation { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
.opening-equation > article { overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-sm); background: var(--ui-surface); }
.opening-equation > article.is-variance { grid-column: 1 / -1; }
.opening-equation article > header { display: flex; padding: .7rem .8rem; align-items: center; gap: .6rem; border-bottom: 1px solid var(--ui-border); }
.opening-equation article > header > span { display: grid; width: 1.65rem; height: 1.65rem; place-items: center; border-radius: .45rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .58rem; font-weight: 850; }
.opening-equation header strong, .opening-equation header small { display: block; }
.opening-equation header strong { font-size: .72rem; }
.opening-equation header small { margin-top: .14rem; color: var(--ui-text-muted); font-size: .53rem; }
.opening-equation dl { display: grid; margin: 0; padding: .55rem; gap: .35rem; }
.opening-equation dl > div { display: flex; padding: .45rem .5rem; align-items: baseline; justify-content: space-between; gap: .65rem; border-radius: var(--ui-radius-sm); background: var(--ui-surface-muted); }
.opening-equation dl > div.is-total { background: var(--ui-primary-soft); }
.opening-equation dt { margin: 0; color: var(--ui-text-muted); font-size: .62rem; }
.opening-equation dd { margin: 0; font-size: .78rem; font-weight: 850; text-align: right; overflow-wrap: anywhere; }
.opening-equation small { display: block; margin-top: .15rem; color: var(--ui-text-muted); font-size: .52rem; }
.opening-balance[data-state="balanced"] { border-color: var(--ui-success); background: var(--ui-success-soft); }
.opening-balance[data-state="balanced"] [data-opening-variance] { color: var(--ui-success); }
.opening-balance[data-state="difference"] { border-color: var(--ui-warning); background: #fff8e8; }
.opening-balance[data-state="difference"] [data-opening-variance] { color: var(--ui-danger); }
.stock-value-summary { margin-bottom: 1rem; overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.stock-value-summary > header { padding: .9rem 1rem; border-bottom: 1px solid var(--ui-border); }
.stock-value-summary h2, .stock-value-summary p { margin: 0; }
.stock-value-summary h2 { font-size: .9rem; }
.stock-value-summary header p:not(.ui-eyebrow) { max-width: 42rem; margin-top: .3rem; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.45; }
.stock-value-summary > dl { display: grid; margin: 0; padding: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .65rem; background: var(--ui-surface-muted); }
.stock-value-summary > dl > div { min-width: 0; padding: .75rem; border-radius: var(--ui-radius-sm); background: var(--ui-surface); }
.stock-value-summary > dl > div.is-total { background: var(--ui-primary-soft); }
.stock-value-summary.is-incomplete > dl > div { background: #fff3d9; }
.stock-value-summary.is-incomplete > dl > div.is-total { background: #ffe8b8; }
.stock-value-summary dt, .stock-value-summary dd, .stock-value-summary small { display: block; }
.stock-value-summary dt { color: var(--ui-text-muted); font-size: .58rem; font-weight: 700; }
.stock-value-summary dd { margin: .3rem 0 0; font-size: .82rem; font-weight: 850; overflow-wrap: anywhere; }
.stock-value-summary small { margin-top: .25rem; color: var(--ui-text-muted); font-size: .52rem; line-height: 1.35; }
.opening-stock-summary { margin: 0 var(--ui-card-padding) var(--ui-card-padding); overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface-muted); }
.opening-stock-summary > header { display: flex; padding: 1rem; align-items: flex-start; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--ui-border); }
.opening-stock-summary h2, .opening-stock-summary p { margin: 0; }
.opening-stock-summary h2 { font-size: .9rem; }
.opening-stock-summary header p:not(.ui-eyebrow) { max-width: 38rem; margin-top: .3rem; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.45; }
.opening-stock-summary > dl { display: grid; margin: 0; padding: 1rem; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .65rem; }
.opening-stock-summary > dl > div { min-width: 0; padding: .7rem; border-radius: var(--ui-radius-sm); background: var(--ui-surface); }
.opening-stock-summary > dl > div.is-total { background: var(--ui-primary-soft); }
.opening-stock-summary > dl > div.is-separate { border: 1px dashed var(--ui-border-strong); background: var(--ui-surface); }
.opening-stock-summary dt, .opening-stock-summary dd, .opening-stock-summary small { display: block; }
.opening-stock-summary dt { color: var(--ui-text-muted); font-size: .58rem; font-weight: 700; }
.opening-stock-summary dd { margin: .3rem 0 0; font-size: .78rem; font-weight: 850; overflow-wrap: anywhere; }
.opening-stock-summary small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .52rem; line-height: 1.35; }
@media (max-width: 62rem) { .opening-live-summary { grid-template-columns: 1fr; } }
@media (max-width: 62rem) { .opening-equation { grid-template-columns: 1fr; } .opening-equation > article.is-variance { grid-column: auto; } }
@media (max-width: 62rem) { .opening-stock-summary > dl { grid-template-columns: 1fr 1fr; } }
@media (max-width: 62rem) { .stock-value-summary > dl { grid-template-columns: 1fr 1fr; } .stock-value-summary > dl > div.is-total { grid-column: 1 / -1; } }
@media (max-width: 42rem) { .opening-stock-summary > header { flex-direction: column; } .opening-stock-summary > dl { grid-template-columns: 1fr; } }
@media (max-width: 42rem) { .stock-value-summary > dl { grid-template-columns: 1fr; } }
@media (max-width: 42rem) {
    .opening-repeater__heading { align-items: flex-start; flex-direction: column; }
    .opening-repeat-row .ui-form-grid, .opening-live-summary dl, .opening-equation { grid-template-columns: 1fr; }
    .opening-repeater__add, .opening-repeat-row__remove { width: 100%; }
    .opening-repeat-row > header { align-items: stretch; flex-direction: column; }
}

.workspace-page *,
.workspace-page *::before,
.workspace-page *::after { box-sizing: border-box; }

.workspace-page a { color: inherit; }

.workspace-page .skip-link {
    position: fixed;
    top: .75rem;
    left: .75rem;
    z-index: 100;
    padding: .7rem 1rem;
    border-radius: .5rem;
    background: #fff;
    color: var(--ui-text);
    font-weight: 750;
    transform: translateY(-200%);
}

.workspace-page .skip-link:focus { transform: translateY(0); }

.workspace-page :focus-visible {
    outline: .1875rem solid #dc8d69;
    outline-offset: .1875rem;
}

/* Journal de garde : ouverture vendeur */
.custody-page { display: grid; gap: 1.25rem; }
.custody-balance-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.custody-balance-card { display: grid; gap: .65rem; padding: 1.1rem; }
.custody-balance-card > span { color: var(--ui-text-muted); font-weight: 750; }
.custody-balance-card > strong { font-size: 1.35rem; }
.custody-balance-card > strong small { display: block; margin-top: .2rem; color: var(--ui-text-muted); font-size: .75rem; font-weight: 650; }
.custody-balance-card dl, .custody-transfer-list dl { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem; margin: 0; }
.custody-balance-card dl div, .custody-transfer-list dl div { display: flex; justify-content: space-between; gap: .5rem; padding-top: .55rem; border-top: 1px solid var(--ui-border); }
.custody-balance-card dt, .custody-transfer-list dt { color: var(--ui-text-muted); }
.custody-balance-card dd, .custody-transfer-list dd { margin: 0; font-weight: 750; }
.custody-layout { display: grid; grid-template-columns: minmax(20rem, .8fr) minmax(24rem, 1.2fr); gap: 1.25rem; align-items: start; }
.custody-form { display: grid; gap: 1rem; }
.custody-form fieldset { min-width: 0; margin: 0; padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); }
.custody-form legend { padding: 0 .4rem; font-weight: 800; }
.custody-amount-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
.custody-transfer-list { display: grid; gap: .85rem; }
.custody-transfer-list article { display: grid; gap: .8rem; padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
.custody-transfer-list article > header, .seller-opening-card > header { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.custody-transfer-list article > header div { display: grid; gap: .2rem; }
.custody-transfer-list article small, .seller-opening-card header small { color: var(--ui-text-muted); }
.custody-transfer-list dl { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.custody-transfer-list dl div { display: grid; }
.custody-transfer-list article > footer { display: flex; justify-content: space-between; gap: .75rem; color: var(--ui-text-muted); font-size: .8rem; }
.custody-transfer-note { margin: 0; padding: .7rem; border-radius: var(--ui-radius-sm); background: var(--ui-surface-muted); color: var(--ui-text-muted); }
.seller-opening-list, .seller-opening-card { display: grid; gap: 1rem; }
.seller-opening-card { padding: 1.25rem; }
.seller-opening-card header h2 { margin: .15rem 0; }
.seller-opening-amounts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin: 0; }
.seller-opening-amounts div { padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface-muted); }
.seller-opening-amounts dt { color: var(--ui-text-muted); font-weight: 700; }
.seller-opening-amounts dd { margin: .45rem 0 0; font-size: 1.15rem; font-weight: 850; }
.seller-opening-amounts dd small { font-size: .7rem; }
.seller-opening-decisions { display: grid; grid-template-columns: minmax(12rem, .65fr) minmax(18rem, 1.35fr); gap: 1rem; align-items: end; }
.seller-opening-decisions form, .seller-opening-reject { display: grid; gap: .75rem; }
.custody-history { display: grid; gap: 1rem; }
.network-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
.network-transfer-list article { gap: .9rem; }
.network-transfer-amount { display: flex; justify-content: space-between; gap: 1rem; align-items: baseline; padding: .85rem; border-radius: var(--ui-radius-sm); background: var(--ui-primary-soft); }
.network-transfer-amount strong { font-size: 1.15rem; }
.network-transfer-amount span { color: var(--ui-text-muted); font-size: .75rem; font-weight: 700; }
.network-cancel-form { display: grid; grid-template-columns: 1fr auto; gap: .75rem; align-items: end; padding-top: .8rem; border-top: 1px solid var(--ui-border); }
.seller-network-list, .seller-network-card { display: grid; gap: 1rem; }
.seller-network-card { padding: 1.2rem; }
.seller-network-card > header { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.seller-network-card h2 { margin: .15rem 0; }
.seller-network-card header small { color: var(--ui-text-muted); }
.network-evidence { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; margin: 0; }
.network-evidence div { padding: .8rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-sm); }
.network-evidence dt { color: var(--ui-text-muted); font-size: .72rem; font-weight: 700; }
.network-evidence dd { margin: .3rem 0 0; font-weight: 800; }
.seller-network-decisions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding-top: .9rem; border-top: 1px solid var(--ui-border); }
.seller-network-decisions form { display: grid; gap: .75rem; }
.order-v2 { display: grid; min-width: 0; gap: 1rem; }
.order-v2 > *, .order-v2-layout > *, .order-v2-create > *, .order-v2-create form > * { min-width: 0; max-width: 100%; }
.order-v2 [hidden] { display:none !important; }
.order-workspace-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.order-workspace-choice { display:grid; grid-template-columns:auto 1fr; gap:.15rem .7rem; align-items:center; padding:1rem; color:var(--ui-text); text-decoration:none; border:1px solid var(--ui-border); }
.order-workspace-choice > span { grid-row:1/3; display:grid; width:2.5rem; height:2.5rem; place-items:center; border-radius:50%; background:var(--ui-primary-soft); color:var(--ui-primary); font-weight:800; }
.order-workspace-choice strong,.order-workspace-choice small { display:block; }
.order-workspace-choice small { color:var(--ui-text-muted); }
.order-workspace-choice.is-active { border-color:var(--ui-primary); box-shadow:0 0 0 2px var(--ui-primary-soft); }
.cash-pool-explanation { display:grid; gap:1rem; margin-block:1rem; border-inline-start:4px solid var(--ui-primary); }
.cash-pool-explanation__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; }
.cash-pool-explanation__grid article { display:grid; gap:.2rem; padding:.8rem; background:var(--ui-surface-muted); border-radius:var(--ui-radius-sm); }
.cash-pool-explanation__grid span,.cash-pool-explanation__grid small { color:var(--ui-text-muted); font-size:.78rem; }
.cash-pool-explanation__grid strong { font-size:1.1rem; }
.cash-case__body .cash-expected p { margin:.45rem 0 0; color:var(--ui-text-muted); font-size:.8rem; }
.order-v2-layout { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(22rem, .7fr); gap: 1.25rem; align-items: start; }
.order-v2-layout.has-empty-register { grid-template-columns: minmax(16rem, .75fr) minmax(28rem, 1.25fr); }
.order-v2-list, .order-v2-case, .order-v2-create form { display: grid; gap: 1rem; }
.order-v2-case { padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); }
.order-v2-case > header { display: flex; justify-content: space-between; gap: 1rem; }
.order-v2-case header div { display: grid; gap: .2rem; }
.order-v2-case header small { color: var(--ui-text-muted); }
.order-v2-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .6rem; margin: 0; }
.order-v2-summary div { padding: .7rem; border-radius: var(--ui-radius-sm); background: var(--ui-surface-muted); }
.order-v2-summary dt { color: var(--ui-text-muted); font-size: .7rem; }
.order-v2-summary dd { margin: .25rem 0 0; font-weight: 800; }
.order-line-list { display: grid; gap: .45rem; }
.order-line-list > div { display: grid; grid-template-columns: minmax(10rem,1.5fr) repeat(4,minmax(4rem,.6fr)); gap: .6rem; align-items: center; padding: .65rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-sm); font-size: .75rem; }
.order-v2-case > footer, .order-payment-form { display: grid; gap: .75rem; }
.order-payment-form { grid-template-columns: repeat(3,minmax(0,1fr)); padding-top: .8rem; border-top: 1px solid var(--ui-border); }
.order-payment-form .ui-button { grid-column: 1/-1; }
.order-v2-create fieldset, .delivery-lines fieldset { min-width: 0; margin: 0; padding: .85rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); }
.order-v2-create legend, .delivery-lines legend { padding: 0 .35rem; font-weight: 800; }
.purchase-line { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; padding: .8rem 0; border-bottom: 1px solid var(--ui-border); }
.order-live-preview { display:grid; gap:.35rem; margin:var(--ui-card-padding); padding:1rem; border:1px solid #e2b6a4; border-radius:var(--ui-radius-sm); background:#fff8f4; color:#6f321d; }
.order-live-preview > strong { font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; }
.order-live-preview > div { display:flex; justify-content:space-between; align-items:baseline; gap:1rem; }
.order-live-preview > div b { color:var(--ui-primary-dark); font-size:clamp(1.25rem,2.4vw,1.8rem); font-variant-numeric:tabular-nums; white-space:nowrap; }
.order-live-preview > small { color:var(--ui-text-muted); line-height:1.45; }
.order-line-total { grid-column:1/-1; padding:.65rem .75rem; border-radius:var(--ui-radius-sm); background:var(--ui-surface-muted); color:var(--ui-text-muted); font-weight:800; font-variant-numeric:tabular-nums; }
.purchase-line [data-remove-order-line] { grid-column: 1/-1; justify-self: end; }
.purchase-line [data-remove-order-line]:disabled { display:none; }

.ui-disclosure { overflow:hidden; border:1px solid var(--ui-border); border-radius:var(--ui-radius); background:var(--ui-surface); }
.ui-disclosure > summary { display:flex; min-height:3.5rem; padding:.85rem 1rem; align-items:center; justify-content:space-between; gap:1rem; cursor:pointer; list-style:none; }
.ui-disclosure > summary::-webkit-details-marker { display:none; }
.ui-disclosure > summary > span:first-child { display:grid; gap:.15rem; }
.ui-disclosure > summary small { color:var(--ui-text-muted); }
.ui-disclosure > summary::after { content:'⌄'; color:var(--ui-primary); font-weight:850; transition:transform .2s ease; }
.ui-disclosure[open] > summary { border-bottom:1px solid var(--ui-border); }
.ui-disclosure[open] > summary::after { transform:rotate(180deg); }
.ui-disclosure > .capacity-summary { border:0; border-radius:0; box-shadow:none; }

.section-jump-nav { display:flex; padding:.55rem; flex-wrap:wrap; gap:.45rem; border:1px solid var(--ui-border); border-radius:var(--ui-radius); background:var(--ui-surface); }
.section-jump-nav a { min-height:2.6rem; display:inline-flex; padding:.55rem .8rem; align-items:center; border-radius:var(--ui-radius-sm); background:var(--ui-surface-muted); color:var(--ui-text); font-size:.78rem; font-weight:750; text-decoration:none; }
.section-jump-nav a:hover,.section-jump-nav a:focus-visible { background:var(--ui-primary-soft); color:var(--ui-primary-dark); }
.controller-money-ledger .module-table-wrap { max-height:30rem; overflow:auto; }
.controller-money-ledger thead { position:sticky; top:0; z-index:1; background:var(--ui-surface); }
.received-point-register .remittance-list { max-height:32rem; overflow:auto; }
.cash-register-disclosure, .received-point-disclosure { overflow:hidden; border:1px solid var(--ui-border); border-radius:var(--ui-radius); background:var(--ui-surface); }
.cash-register-disclosure > summary, .received-point-disclosure > summary { display:flex; min-height:3.5rem; padding:.9rem 1rem; align-items:center; justify-content:space-between; gap:1rem; cursor:pointer; list-style:none; }
.cash-register-disclosure > summary::-webkit-details-marker, .received-point-disclosure > summary::-webkit-details-marker { display:none; }
.cash-register-disclosure > summary > span:first-child, .received-point-disclosure > summary > span:first-child { display:grid; gap:.2rem; }
.cash-register-disclosure > summary small, .received-point-disclosure > summary small { color:var(--ui-text-muted); }
.cash-register-disclosure[open] > summary, .received-point-disclosure[open] > summary { border-bottom:1px solid var(--ui-border); }
.received-point-disclosure > article { border:0; border-radius:0; box-shadow:none; }

.client-ledger-page { display:grid; gap:1rem; }
.client-ledger-toolbar { display:flex; padding:1rem; align-items:end; justify-content:space-between; gap:1rem; border:1px solid var(--ui-border); border-radius:var(--ui-radius); background:var(--ui-surface); }
.client-ledger-toolbar .ui-field { flex:1; max-width:36rem; }
.client-ledger-toolbar p { margin:0; color:var(--ui-text-muted); font-size:.78rem; font-weight:750; white-space:nowrap; }
.customer-account-list [data-client-account][hidden] { display:none !important; }
.order-receipt-history { display: grid; gap: .5rem; margin: .7rem 0 0; padding: 0; list-style: none; }
.order-receipt-history li { padding: .65rem; border-radius: var(--ui-radius-sm); background: var(--ui-surface-muted); }
.delivery-page, .delivery-list, .delivery-case, .delivery-form, .delivery-lines { display: grid; gap: 1rem; }
.delivery-case { padding: 1.15rem; }
.delivery-case > header { display: flex; justify-content: space-between; gap: 1rem; }
.delivery-case h2 { margin: .15rem 0; }
.delivery-case header small { color: var(--ui-text-muted); }
.delivery-lines fieldset > div, .delivery-decision { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .7rem; }
.delivery-lines fieldset > p { color: var(--ui-text-muted); }
.delivery-lines fieldset > small { display: block; margin-top: .7rem; color: var(--ui-text-muted); }
.delivery-decision { padding: 1rem; border-radius: var(--ui-radius); background: var(--ui-surface-muted); }

@media (max-width: 68rem) {
    .custody-balance-grid, .seller-opening-amounts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .custody-layout { grid-template-columns: 1fr; }
    .order-v2-layout, .order-v2-layout.has-empty-register { grid-template-columns: minmax(0, 1fr); }
    .order-v2-create { order: -1; }
    .delivery-lines fieldset > div, .delivery-decision { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 42rem) {
    .custody-balance-grid, .custody-amount-grid, .seller-opening-amounts, .seller-opening-decisions { grid-template-columns: 1fr; }
    .custody-transfer-list dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .custody-transfer-list article > header, .seller-opening-card > header, .custody-transfer-list article > footer { align-items: stretch; flex-direction: column; }
    .seller-opening-decisions .ui-button { width: 100%; min-height: 2.75rem; }
    .network-form-grid, .network-evidence, .seller-network-decisions, .network-cancel-form { grid-template-columns: 1fr; }
    .network-transfer-amount, .seller-network-card > header { align-items: stretch; flex-direction: column; }
    .seller-network-decisions .ui-button, .network-cancel-form .ui-button { width: 100%; min-height: 2.75rem; }
    .order-v2-case > header, .delivery-case > header { flex-direction: column; }
    .order-workspace-choices { grid-template-columns:1fr; }
    .order-v2-summary, .purchase-line, .order-payment-form, .delivery-lines fieldset > div, .delivery-decision { grid-template-columns: 1fr; }
    .order-line-list > div { grid-template-columns: 1fr 1fr; }
    .order-line-list > div > span:first-child { grid-column: 1/-1; }
    .purchase-line [data-remove-order-line], .order-payment-form .ui-button { grid-column: auto; width: 100%; }
    .order-live-preview > div { display:grid; gap:.25rem; }
    .client-ledger-toolbar { align-items:stretch; flex-direction:column; }
    .client-ledger-toolbar p { white-space:normal; }
    .section-jump-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .section-jump-nav a { justify-content:center; text-align:center; }
    .ui-disclosure > summary { align-items:flex-start; }
}

.workspace-shell { min-height: 100vh; min-height: 100dvh; }

.workspace-main {
    min-width: 0;
    margin-left: var(--ui-sidebar-width);
}

.workspace-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 50;
    display: flex;
    width: var(--ui-sidebar-width);
    min-height: 100vh;
    min-height: 100dvh;
    padding: 1.25rem 1rem;
    overflow-y: auto;
    flex-direction: column;
    background: var(--ui-sidebar);
    border: 0;
    color: #fff;
}

.workspace-brand {
    display: flex;
    min-height: 3rem;
    padding: 0 .625rem;
    align-items: center;
    gap: .75rem;
    color: #fff;
    font-size: 1.125rem;
    font-weight: 750;
    letter-spacing: -.02em;
    text-decoration: none;
}

.workspace-sidebar__brand-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
}

.workspace-sidebar__close {
    display: none;
    width: 2.75rem;
    height: 2.75rem;
    flex: 0 0 2.75rem;
    place-items: center;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: .625rem;
    background: rgba(255,255,255,.08);
    color: #fff;
    cursor: pointer;
}

.workspace-sidebar__close svg {
    width: 1.15rem;
    height: 1.15rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-width: 2;
}

.workspace-brand__mark {
    display: grid;
    width: 2rem;
    height: 2rem;
    place-items: center;
    border-radius: .625rem;
    overflow: hidden;
    background: transparent;
    color: #fff;
    font-size: .75rem;
}
.workspace-brand__mark svg { display: block; width: 100%; height: 100%; }

.workspace-sidebar__label {
    margin: 1rem .625rem .2rem;
    color: var(--ui-sidebar-muted);
    font-size: .6875rem;
    font-weight: 750;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.workspace-sidebar__mission {
    margin: 0 .625rem 1rem;
    color: #fff;
    font-size: .78rem;
    font-weight: 650;
    line-height: 1.35;
}

.workspace-nav { display: grid; gap: .25rem; }

.workspace-nav__group {
    margin: 1.1rem .625rem .25rem;
    color: var(--ui-sidebar-muted);
    font-size: .65rem;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.workspace-nav__link {
    display: flex;
    min-height: 2.875rem;
    padding: .625rem .75rem;
    align-items: center;
    gap: .75rem;
    border: 1px solid transparent;
    border-radius: .625rem;
    color: var(--role-ink);
    font-size: .875rem;
    font-weight: 600;
    text-decoration: none;
    transition: background-color .15s ease, color .15s ease;
}

.workspace-nav__link:hover { background: rgba(255,255,255,.07); color: #fff; }
.workspace-nav__link.is-active { background: var(--ui-primary); color: #fff; }

.workspace-nav__icon {
    display: grid;
    width: 1.75rem;
    height: 1.75rem;
    flex: 0 0 1.75rem;
    place-items: center;
    border-radius: .5rem;
    background: rgba(255,255,255,.08);
    color: #fff;
    font-size: .9rem;
    font-weight: 800;
}

.workspace-nav__link:hover .workspace-nav__icon { background: rgba(255,255,255,.15); }
.workspace-nav__link.is-active .workspace-nav__icon { background: rgba(255,255,255,.2); }

.workspace-sidebar__footer {
    display: grid;
    margin-top: auto;
    padding-top: 1.25rem;
    gap: .75rem;
    border-top: 1px solid rgba(255,255,255,.1);
}

.workspace-session { color: var(--ui-sidebar-muted); font-size: .75rem; }

.workspace-header {
    position: sticky;
    top: 0;
    z-index: 30;
    display: flex;
    min-height: 4.5rem;
    padding: .75rem clamp(1rem, 3vw, 2.25rem);
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid var(--ui-border);
    background: rgba(255,255,255,.94);
    backdrop-filter: blur(.75rem);
}

.workspace-header__context { display: flex; align-items: center; gap: .75rem; min-width: 0; color: var(--ui-text-muted); }
.workspace-header__badge { display: inline-flex; min-height: 2rem; padding: .25rem .65rem; align-items: center; border-radius: 999px; background: var(--ui-primary-soft); color: var(--ui-primary-dark); font-size: .68rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.workspace-header__context > div { min-width: 0; }
.workspace-header__context strong, .workspace-header__context small { display: block; }
.workspace-header__context strong { color: var(--ui-text); font-size: .92rem; font-weight: 750; }
.workspace-header__context small { margin-top: .1rem; font-size: .68rem; }
.workspace-user strong { color: var(--ui-text); }
.workspace-user small { color: var(--ui-text-muted); }

.workspace-help { position: relative; }
.workspace-help > summary { display: inline-flex; min-height: 2.75rem; padding: .4rem .65rem; align-items: center; gap: .45rem; border: 1px solid var(--ui-border); border-radius: 999px; background: var(--ui-surface); color: var(--ui-text-muted); cursor: pointer; font-size: .75rem; font-weight: 750; list-style: none; }
.workspace-help > summary::-webkit-details-marker { display: none; }
.workspace-help > summary > span:first-child { display: grid; width: 1.55rem; height: 1.55rem; place-items: center; border-radius: 50%; background: var(--ui-primary-soft); color: var(--ui-primary); font-weight: 900; }
.workspace-help[open] > summary { border-color: var(--ui-primary); color: var(--ui-primary); }
.workspace-help__panel { position: absolute; top: calc(100% + .65rem); right: 0; z-index: 50; width: min(25rem, calc(100vw - 2rem)); max-height: min(34rem, calc(100vh - 6rem)); overflow-y: auto; padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: 0 1rem 2.5rem rgba(40,23,17,.18); }
.workspace-help__panel > header { display: grid; padding-bottom: .75rem; border-bottom: 1px solid var(--ui-border); }
.workspace-help__panel > header small, .workspace-help__hint { color: var(--ui-text-muted); }
.workspace-help__panel dl { display: grid; margin: .75rem 0; gap: .55rem; }
.workspace-help__panel dl > div { padding: .65rem; border-radius: .65rem; background: var(--ui-surface-muted); }
.workspace-help__panel dt { color: var(--ui-text); font-size: .78rem; font-weight: 850; }
.workspace-help__panel dd { margin: .2rem 0 0; color: var(--ui-text-muted); font-size: .74rem; line-height: 1.45; }
.workspace-help__hint { display: block; font-size: .68rem; text-align: center; }

.workspace-content {
    width: min(100%, 98rem);
    margin-inline: auto;
    padding: clamp(1.25rem, 3vw, 2.25rem);
}

.ui-page-header {
    display: flex;
    margin-bottom: 1.5rem;
    align-items: end;
    justify-content: space-between;
    gap: 1.5rem;
}

.ui-page-header__copy { max-width: 48rem; }
.ui-eyebrow { margin: 0 0 .375rem; color: var(--ui-primary); font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ui-page-header h1 { margin: 0; color: var(--ui-text); font-size: clamp(1.65rem, 3vw, 2.35rem); line-height: 1.12; letter-spacing: -.035em; }
.ui-page-header__copy > p:last-child { margin: .625rem 0 0; color: var(--ui-text-muted); line-height: 1.55; }

.ui-button {
    display: inline-flex;
    min-height: 2.75rem;
    padding: .65rem 1rem;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border: 1px solid transparent;
    border-radius: .625rem;
    font: inherit;
    font-size: .875rem;
    font-weight: 700;
    text-decoration: none;
}

.ui-button--primary { background: var(--ui-primary); color: #fff !important; box-shadow: 0 .25rem .75rem rgba(154,53,22,.2); }
.ui-button--primary:hover { background: var(--ui-primary-dark); }
.ui-button--secondary { border-color: var(--ui-border-strong); background: #fff; color: var(--ui-text); }
.ui-button--ghost { border-color: transparent; background: transparent; color: var(--ui-text-muted); }
.ui-button--ghost:hover { background: var(--ui-surface-muted); color: var(--ui-text); }
.ui-button--danger { background: var(--ui-danger); color: #fff !important; }
.ui-button--danger:hover { filter: brightness(.92); }

.ui-metric-grid {
    display: grid;
    margin-bottom: 1rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.ui-metric-card {
    min-width: 0;
    padding: 1.125rem;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    box-shadow: 0 1px 2px rgba(16,24,40,.03);
}

.ui-metric-card > span { display: block; color: var(--ui-text-muted); font-size: .8125rem; font-weight: 650; }
.ui-metric-card > strong { display: block; margin-top: .625rem; color: var(--ui-text); font-size: clamp(1.4rem, 2.3vw, 1.85rem); letter-spacing: -.035em; }
.ui-metric-card > strong small { font-size: .7rem; letter-spacing: .02em; }
.ui-metric-card > p { min-height: 2.4em; margin: .5rem 0 0; color: var(--ui-text-muted); font-size: .75rem; line-height: 1.45; }
.ui-metric-card--primary { border-top: .1875rem solid var(--ui-primary); }
.ui-metric-card--success { border-color: #a8dfc6; background: var(--ui-success-soft); }
.ui-metric-card--success > strong { color: var(--ui-success); }
.ui-metric-card--warning { border-color: #f0d28a; background: #fffaf0; }
.ui-metric-card--warning > strong { color: var(--ui-warning); }
.ui-metric-card--danger { border-color: #f4b9b9; background: var(--ui-danger-soft); }
.ui-metric-card--danger > strong { color: var(--ui-danger); }

.seller-quick-actions {
    display: grid;
    margin: 1rem 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.seller-quick-action {
    display: grid;
    min-height: 5rem;
    padding: .875rem 1rem;
    align-items: center;
    grid-template-columns: auto 1fr auto;
    gap: .75rem;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    color: var(--ui-text);
    text-decoration: none;
}

.seller-quick-action:hover { border-color: #a9c8f5; box-shadow: var(--ui-shadow); }
.seller-quick-action--primary { border-color: var(--ui-primary); background: var(--ui-primary); color: #fff; }
.seller-quick-action--primary:hover { background: var(--ui-primary-dark); }
.seller-quick-action__icon { display: grid; width: 2.25rem; height: 2.25rem; place-items: center; border-radius: .625rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: 1.1rem; font-weight: 800; }
.seller-quick-action--primary .seller-quick-action__icon { background: rgba(255,255,255,.16); color: #fff; }
.seller-quick-action strong, .seller-quick-action small { display: block; }
.seller-quick-action strong { font-size: .875rem; }
.seller-quick-action small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .72rem; line-height: 1.35; }
.seller-quick-action--primary small { color: #f7d9c9; }

.seller-home__grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(20rem, .85fr); gap: 1rem; align-items: start; }
.seller-home .ui-metric-grid { grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr)); }

.ui-card {
    min-width: 0;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius-lg);
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow);
    overflow: hidden;
}

.ui-card__header {
    display: flex;
    min-height: 4.75rem;
    padding: 1rem 1.125rem;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid var(--ui-border);
}

.ui-card__header .ui-eyebrow { margin-bottom: .2rem; }
.ui-card__header h2 { margin: 0; color: var(--ui-text); font-size: 1.05rem; letter-spacing: -.015em; }
.ui-link { color: var(--ui-primary) !important; font-size: .8125rem; font-weight: 700; text-decoration: none; }
.ui-link:hover { text-decoration: underline; }

.ui-badge { display: inline-flex; width: fit-content; padding: .3rem .55rem; align-items: center; border-radius: 999px; font-size: .7rem; font-style: normal; font-weight: 750; white-space: nowrap; }
.ui-badge--neutral { background: #eef2f6; color: #475467; }
.ui-badge--success { background: var(--ui-success-soft); color: var(--ui-success); }
.ui-badge--danger { background: var(--ui-danger-soft); color: var(--ui-danger); }
.ui-badge--info { background: var(--ui-primary-soft); color: var(--ui-primary-dark); }
.ui-badge--warning { background: #fff3d9; color: var(--ui-warning); }

.ui-table-wrap { max-width: 100%; overflow-x: auto; }
.ui-table { width: 100%; border-collapse: collapse; }
.ui-table th, .ui-table td { padding: .85rem 1.125rem; border-bottom: 1px solid #edf0f4; text-align: left; vertical-align: middle; }
.ui-table th { background: var(--ui-surface-muted); color: var(--ui-text-muted); font-size: .7rem; letter-spacing: .04em; text-transform: uppercase; }
.ui-table td { color: var(--ui-text); font-size: .8125rem; }
.ui-table td strong, .ui-table td small { display: block; }
.ui-table td small { margin-top: .2rem; color: var(--ui-text-muted); }
.ui-table tbody tr:last-child td { border-bottom: 0; }

.seller-sales-list { margin: 0; padding: 0; list-style: none; }
.seller-sales-list li { display: grid; padding: .9rem 1.125rem; align-items: center; grid-template-columns: auto minmax(0,1fr) auto; gap: .75rem; border-bottom: 1px solid #edf0f4; }
.seller-sales-list li:last-child { border-bottom: 0; }
.seller-sales-list__mark { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: 50%; background: var(--ui-success-soft); color: var(--ui-success); font-size: .75rem; font-weight: 800; }
.seller-sales-list__mark--deposit { background: var(--ui-info-soft, #eef4f7); color: var(--ui-ink, #1f4a5c); }
.seller-sales-list__mark--withdrawal { background: var(--ui-success-soft); color: var(--ui-success); }
.seller-sales-list div strong, .seller-sales-list div small { display: block; }
.seller-sales-list div strong { overflow: hidden; color: var(--ui-text); font-size: .8125rem; text-overflow: ellipsis; white-space: nowrap; }
.seller-sales-list div small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .7rem; }
.seller-sales-list li > strong { text-align: right; font-size: .8125rem; white-space: nowrap; }
.seller-sales-list li > strong small { font-size: .625rem; }
.seller-debts .customer-account-list { max-height: 32rem; }
.seller-debts .customer-account-action { padding-left: 0; padding-right: 0; }
.seller-debt-lines { margin: .65rem 0; padding: 0; list-style: none; }
.seller-debt-lines li { display: flex; justify-content: space-between; gap: .75rem; padding: .35rem 0; color: var(--ui-text-muted); font-size: .72rem; border-bottom: 1px solid var(--ui-border); }
.seller-debt-lines li:last-child { border-bottom: 0; }
.seller-debt-lines b { color: var(--ui-text); font-weight: 650; white-space: nowrap; }
.seller-money-line { padding: .75rem 0; }
.seller-money-line + .seller-money-line { border-top: 1px dashed var(--ui-border); }
.seller-recent-action__cancel { display: grid; grid-column: 1 / -1; gap: .5rem; padding-top: .15rem; }
.seller-recent-action__cancel .ui-field { margin: 0; }
.seller-recent-action__cancel .ui-button { min-height: 2.75rem; justify-self: start; }
.seller-recent-action__note { margin: 0; padding: .75rem 1.125rem 1rem; color: var(--ui-text-muted); font-size: .75rem; line-height: 1.45; }

.ui-empty-state { display: grid; min-height: 15rem; padding: 2rem; place-items: center; align-content: center; text-align: center; }
.ui-empty-state__icon { display: grid; width: 3rem; height: 3rem; margin-bottom: .75rem; place-items: center; border-radius: 50%; background: var(--ui-primary-soft); color: var(--ui-primary); font-weight: 800; }
.ui-empty-state > strong { color: var(--ui-text); }
.ui-empty-state > p { max-width: 26rem; margin: .5rem 0 1rem; color: var(--ui-text-muted); font-size: .8125rem; line-height: 1.5; }

.workspace-page .app-feedback { margin: 0 0 1rem; }

/* Nouvelle vente */
.sale-steps {
    display: grid;
    margin: 0 0 1.25rem;
    padding: .75rem;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: .25rem;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    list-style: none;
}

.sale-steps li {
    display: flex;
    min-width: 0;
    min-height: 2.75rem;
    align-items: center;
    gap: .5rem;
    color: var(--ui-text-muted);
    font-size: .72rem;
    font-weight: 700;
}

.sale-steps li span {
    display: grid;
    width: 1.65rem;
    height: 1.65rem;
    flex: 0 0 1.65rem;
    place-items: center;
    border-radius: 50%;
    background: var(--ui-primary-soft);
    color: var(--ui-primary);
    font-size: .7rem;
}

.sale-kind-tabs {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 1.25rem;
    gap: .5rem;
}
.sale-kind-tabs .ui-button small {
    margin-left: .35rem;
    font-size: .7rem;
    font-weight: 750;
    opacity: .85;
}

.ui-form-grid {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
    align-items: start;
    gap: 1rem;
}

.ui-form-grid > .ui-button { justify-self: start; }

.ui-alert {
    display: flex;
    margin-bottom: 1rem;
    padding: .875rem 1rem;
    align-items: flex-start;
    gap: .75rem;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius-sm);
    color: var(--ui-text);
}

.ui-alert > span {
    display: grid;
    width: 1.5rem;
    height: 1.5rem;
    flex: 0 0 1.5rem;
    place-items: center;
    border-radius: 50%;
    font-size: .7rem;
    font-weight: 800;
}

.ui-alert strong { display: block; margin-bottom: .2rem; font-size: .8125rem; }
.ui-alert p { margin: 0; font-size: .75rem; line-height: 1.5; }
.ui-alert .ui-button { margin-top: .65rem; }
.ui-alert--warning { border-color: #f0cf95; background: #fff8e8; color: #714600; }
.ui-alert--warning > span { background: #f5d99d; color: #714600; }
.ui-alert--info { border-color: #e2b6a4; background: #fff8f4; color: #6f321d; }
.ui-alert--info > span { background: #f7d9c9; color: var(--ui-primary-dark); }
.ui-alert--success { border-color: #a9dfc7; background: var(--ui-success-soft); color: #0f6243; }
.ui-alert--success > span { background: #c7eddc; color: var(--ui-success); }
.ui-alert--danger { border-color: #efb5b5; background: var(--ui-danger-soft); color: #8f2626; }
.ui-alert--danger > span { background: #f6cdcd; color: var(--ui-danger); }
.ui-alert--neutral { background: var(--ui-surface); color: var(--ui-text-muted); }
.ui-alert--neutral > span { background: #e9edf3; color: #536074; }

.sale-form__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(19rem, 25rem);
    gap: 1rem;
    align-items: start;
}

.sale-form__fields { display: grid; min-width: 0; gap: 1rem; }
.sale-section { overflow: visible; }

.sale-section__header {
    display: flex;
    padding: 1rem 1.125rem;
    align-items: flex-start;
    gap: .75rem;
    border-bottom: 1px solid var(--ui-border);
}

.sale-section__number {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 2rem;
    place-items: center;
    border-radius: .625rem;
    background: var(--ui-primary-soft);
    color: var(--ui-primary);
    font-size: .75rem;
    font-weight: 800;
}

.sale-section__header h2 { margin: 0; color: var(--ui-text); font-size: 1rem; }
.sale-section__header p { margin: .3rem 0 0; color: var(--ui-text-muted); font-size: .75rem; line-height: 1.45; }
.sale-section__body { padding: 1.125rem; }
.sale-section__body:not(.sale-field-grid) { display: grid; gap: 1rem; }

.sale-field-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(9rem, .55fr); gap: 1rem; }
.sale-field-grid--equal { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.ui-field { display: grid; min-width: 0; align-content: start; gap: .45rem; color: var(--ui-text); font-size: .8rem; font-weight: 700; }
.ui-field > small { color: var(--ui-text-muted); font-size: .7rem; font-weight: 450; line-height: 1.4; }

.ui-field :is(input, select, textarea) {
    width: 100%;
    min-height: 3rem;
    padding: .7rem .8rem;
    border: 1px solid var(--ui-border-strong);
    border-radius: .625rem;
    background: #fff;
    color: var(--ui-text);
    font: inherit;
    font-size: .875rem;
    font-weight: 550;
}

.ui-field :is(input, select, textarea):hover { border-color: #9bb5d6; }
.ui-field :is(input, select, textarea):focus { border-color: var(--ui-primary); outline: .1875rem solid rgba(154,53,22,.16); outline-offset: 0; }
.ui-field :is(input, select, textarea)[aria-invalid="true"] { border-color: var(--ui-danger); background: #fffafa; }
.ui-field :is(input, select, textarea):disabled { cursor: not-allowed; background: #eef1f5; color: #7b8495; }

.sale-fifo-note { margin: 0 1.125rem 1.125rem; }

.sale-debt-fields {
    display: grid;
    margin: 0 1.125rem 1.125rem;
    padding: 1rem;
    gap: .85rem;
    border: 1px solid var(--ui-border);
    border-radius: .75rem;
    background: var(--ui-surface-muted);
}
.sale-debt-fields[hidden] { display: none; }
.sale-debt-fields .ui-alert { margin: 0; }
[data-sale-existing-person] [data-person-filter] {
    margin-bottom: .45rem;
}
.sale-debt-mode {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem 1.25rem;
    margin: 0;
    padding: 0;
    border: 0;
}
.sale-buyer-type {
    display: grid;
    gap: .45rem;
    margin: 0 0 .15rem;
    padding: .75rem .85rem;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
}
.sale-buyer-type legend {
    margin-bottom: .15rem;
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--ui-muted);
}
.sale-buyer-type label {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    margin-right: 1.1rem;
    min-height: 2.5rem;
    font-size: .85rem;
    font-weight: 600;
}
.sale-buyer-type small {
    color: var(--ui-text-muted);
    font-size: .72rem;
    line-height: 1.45;
}
.sale-empty-brand {
    display: grid;
    gap: .45rem;
    margin: 0 1.125rem 1rem;
    padding: .75rem .85rem;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
}
.sale-empty-brand[hidden] { display: none; }
.sale-empty-brand legend {
    margin-bottom: .15rem;
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--ui-muted);
}
.sale-empty-brand label {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    margin-right: 1.1rem;
    min-height: 2.5rem;
    font-size: .85rem;
    font-weight: 600;
}
.sale-empty-brand small,
.sale-custody-credit-hint {
    margin: 0;
    color: var(--ui-text-muted);
    font-size: .72rem;
    line-height: 1.45;
}
.sale-debt-mode legend {
    margin-bottom: .35rem;
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--ui-muted);
}
.sale-debt-mode label {
    display: flex;
    align-items: center;
    gap: .4rem;
    font-size: .85rem;
    font-weight: 600;
}
.sale-debt-new {
    display: grid;
    gap: .85rem;
}
@media (min-width: 40rem) {
    .sale-debt-new { grid-template-columns: 1fr 1fr; }
}
.sale-debt-new[hidden],
[data-sale-existing-person][hidden],
[data-sale-debtor-photo][hidden],
.sale-debt-photo-preview[hidden] { display: none; }
.sale-debt-photo-preview {
    margin: 0;
    padding: .75rem;
    border: 1px solid var(--ui-border);
    border-radius: .75rem;
    background: var(--ui-surface);
}
.sale-debt-photo-preview img {
    display: block;
    width: 5.5rem;
    height: 5.5rem;
    object-fit: cover;
    border-radius: .5rem;
    background: #ece7e0;
}
.sale-debt-photo-preview figcaption {
    margin-top: .5rem;
    font-size: .72rem;
    color: var(--ui-muted);
}

.sale-summary { position: sticky; top: 5.5rem; min-width: 0; }
.sale-summary__card { padding: 1.25rem; border-radius: var(--ui-radius-lg); background: var(--ui-sidebar); color: #fff; box-shadow: 0 1rem 2rem rgba(16,27,50,.18); }
.sale-summary__card header { padding-bottom: 1rem; border-bottom: 1px solid rgba(255,255,255,.14); }
.sale-summary__card .ui-eyebrow { color: #e9a98c; }
.sale-summary__card h2 { margin: 0; color: #fff; font-size: 1.15rem; }

.sale-summary__product { padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.14); }
.sale-summary__product span { display: block; margin-bottom: .35rem; color: #aebbd0; font-size: .68rem; font-weight: 700; text-transform: uppercase; }
.sale-summary__product strong { display: block; font-size: .9rem; line-height: 1.4; }
.sale-summary dl { display: grid; margin: 0; padding: 1rem 0; gap: .75rem; }
.sale-summary dl div { display: flex; justify-content: space-between; gap: 1rem; }
.sale-summary dt { color: #aebbd0; font-size: .75rem; }
.sale-summary dd { margin: 0; font-size: .75rem; font-weight: 700; text-align: right; }

.sale-summary__total { padding: 1rem; border-radius: .75rem; background: rgba(255,255,255,.08); }
.sale-summary__total span { display: block; color: #bdc9da; font-size: .7rem; font-weight: 700; }
.sale-summary__total strong { display: block; margin-top: .35rem; color: #fff; font-size: clamp(1.6rem, 3vw, 2.2rem); letter-spacing: -.04em; }
.sale-summary__feedback { min-height: 1.25rem; margin: .75rem 0 0; color: #ffd79a; font-size: .72rem; line-height: 1.45; }
.sale-summary__server-note { display: flex; margin: .75rem 0 1rem; gap: .5rem; color: #bdc9da; font-size: .69rem; line-height: 1.45; }
.sale-summary__server-note span { color: #6de2ad; font-weight: 800; }
.sale-submit { width: 100%; border: 0; cursor: pointer; }
.sale-submit:disabled { cursor: not-allowed; opacity: .5; box-shadow: none; }
.sale-cancel { display: block; min-height: 2.75rem; padding: .8rem .5rem 0; color: #c8d2e2 !important; font-size: .72rem; text-align: center; text-decoration: none; }
.sale-cancel:hover { color: #fff !important; text-decoration: underline; }

/* Point journalier */
.point-status { align-items: center; }
.point-status > div { min-width: 0; flex: 1; }
.point-status time { color: inherit; font-size: .7rem; white-space: nowrap; }

.point-progress {
    position: relative;
    display: grid;
    margin: 1rem 0;
    padding: 1rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    list-style: none;
}

.point-progress::before { position: absolute; top: 1.95rem; right: 10%; left: 10%; height: 2px; background: var(--ui-border); content: ""; }
.point-progress li { position: relative; z-index: 1; display: grid; place-items: center; gap: .45rem; color: var(--ui-text-muted); text-align: center; }
.point-progress li span { display: grid; width: 2rem; height: 2rem; place-items: center; border: 2px solid var(--ui-border); border-radius: 50%; background: #fff; color: var(--ui-text-muted); font-size: .7rem; font-weight: 800; }
.point-progress li strong { font-size: .7rem; }
.point-progress li.is-complete span { border-color: var(--ui-success); background: var(--ui-success); color: #fff; }
.point-progress li.is-current span { border-color: var(--ui-primary); background: var(--ui-primary); color: #fff; box-shadow: 0 0 0 .25rem var(--ui-primary-soft); }
.point-progress li.is-current strong { color: var(--ui-primary); }
.point-metrics { margin-top: 0; }

.point-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(20rem, 25rem); gap: 1rem; align-items: start; }
.point-main { display: grid; min-width: 0; gap: 1rem; }
.point-section { overflow: hidden; }
.point-payment-grid { display: grid; margin: 0; padding: 1.125rem; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; }
.point-payment-grid div { min-width: 0; padding: .875rem; border: 1px solid var(--ui-border); border-radius: .75rem; background: var(--ui-surface-muted); }
.point-payment-grid dt { color: var(--ui-text-muted); font-size: .7rem; }
.point-payment-grid dd { margin: .5rem 0 0; color: var(--ui-text); font-size: 1rem; font-weight: 800; }
.point-payment-grid dd small { font-size: .6rem; }
.point-electronic-summary { display: flex; flex-wrap: wrap; margin: 0 1.125rem 1.125rem; padding: .875rem 1rem; align-items: center; gap: .5rem 1rem; border-radius: .75rem; background: var(--ui-primary-soft); color: #6f321d; }
.point-electronic-summary > span { font-size: .75rem; }
.point-electronic-summary strong { margin-left: auto; color: var(--ui-primary-dark); font-size: .85rem; white-space: nowrap; }
.point-electronic-summary p { flex: 1 0 100%; margin: 0; color: #6f321d; font-size: .72rem; font-weight: 750; }
.point-section__intro { margin: 0; padding: 1rem 1.125rem 0; color: var(--ui-text-muted); font-size: .75rem; line-height: 1.55; }
.point-tender-grid { display: grid; padding: 1.125rem; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .875rem; }
.point-tender { overflow: hidden; border: 1px solid var(--ui-border); border-top: .2rem solid var(--network-color, var(--ui-primary)); border-radius: .8rem; background: var(--ui-surface-muted); }
.point-tender--mtn { --network-color: #e4ae13; } .point-tender--moov { --network-color: #168751; } .point-tender--celtis { --network-color: #1769e0; }
.point-tender > header { display: flex; padding: .9rem; align-items: center; justify-content: space-between; gap: .75rem; background: var(--ui-surface); }
.point-tender > header div { display: grid; gap: .15rem; } .point-tender > header span { color: var(--ui-text-muted); font-size: .62rem; font-weight: 800; } .point-tender > header strong { font-size: .78rem; } .point-tender > header b { font-size: .85rem; white-space: nowrap; }
.point-tender dl { display: grid; margin: 0; padding: .7rem .9rem; grid-template-columns: repeat(3,1fr); gap: .5rem; border-top: 1px solid var(--ui-border); border-bottom: 1px solid var(--ui-border); }
.point-tender dl div { display: grid; gap: .2rem; } .point-tender dt { color: var(--ui-text-muted); font-size: .62rem; } .point-tender dd { margin: 0; font-size: .7rem; font-weight: 750; }
.point-tender__fields { display: grid; padding: .9rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; } .point-tender__reason { grid-column: 1 / -1; }
.point-snapshot-result { display: flex; padding: .85rem .9rem; flex-wrap: wrap; gap: .6rem 1rem; color: var(--ui-text-muted); font-size: .68rem; }
.point-snapshot-result b { color: var(--ui-text); } .point-snapshot-result .is-ok b { color: var(--ui-success); } .point-snapshot-result .is-gap b { color: var(--ui-danger); }
.point-snapshot-result p { width: 100%; margin: 0; padding-top: .55rem; border-top: 1px solid var(--ui-border); color: var(--ui-text); line-height: 1.45; }
.point-stock-list { display: grid; padding: 1rem; gap: .75rem; }
.point-stock-row { overflow: hidden; border: 1px solid var(--ui-border); border-radius: .8rem; background: var(--ui-surface); }
.point-stock-row > header { display: flex; padding: .8rem .9rem; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--ui-border); }
.point-stock-row > header > div { display: flex; align-items: center; gap: .6rem; } .point-stock-row > header strong, .point-stock-row > header small { display: block; } .point-stock-row > header strong { font-size: .78rem; } .point-stock-row > header small, .point-stock-row > header > span { color: var(--ui-text-muted); font-size: .66rem; }
.point-stock-row dl { display: grid; margin: 0; padding: .7rem .9rem; grid-template-columns: repeat(4,1fr); gap: .5rem; background: var(--ui-surface-muted); } .point-stock-row dl div { display: grid; gap: .2rem; } .point-stock-row dt { color: var(--ui-text-muted); font-size: .62rem; } .point-stock-row dd { margin: 0; font-size: .7rem; font-weight: 750; }
.point-stock-row__fields { display: grid; padding: .9rem; grid-template-columns: minmax(8rem,.7fr) minmax(8rem,.7fr) minmax(12rem,1.6fr); gap: .75rem; align-items: end; }
.product-color-dot { width: .75rem; height: .75rem; flex: 0 0 .75rem; border-radius: 50%; background: var(--product-color); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--product-color) 15%, white); }

.point-expense-form { display: grid; padding: 1.125rem; grid-template-columns: minmax(0,1.4fr) minmax(8rem,.55fr) minmax(0,1fr); gap: 1rem; align-items: end; }
.point-expense-form .ui-button { grid-column: 1 / -1; justify-self: start; cursor: pointer; }
.point-expense-list { border-top: 1px solid var(--ui-border); }
.point-expense-list article { display: grid; padding: .8rem 1.125rem; align-items: center; grid-template-columns: auto minmax(0,1fr) auto auto; gap: .75rem; border-bottom: 1px solid #edf0f4; }
.point-expense-list article:last-child { border-bottom: 0; }
.point-expense-list article > span { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; border-radius: 50%; background: var(--ui-danger-soft); color: var(--ui-danger); font-weight: 800; }
.point-expense-list article div strong, .point-expense-list article div small { display: block; }
.point-expense-list article div strong { font-size: .8rem; }
.point-expense-list article div small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .68rem; }
.point-expense-list article > b { font-size: .78rem; white-space: nowrap; }
.point-expense-list article > a { color: var(--ui-primary) !important; font-size: .7rem; font-weight: 700; }

.point-session-debts__list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--ui-border); }
.point-session-debts__list li { display: grid; padding: .85rem 1.125rem; align-items: start; grid-template-columns: minmax(0, 1fr) auto; gap: .75rem; border-bottom: 1px solid #edf0f4; }
.point-session-debts__list li:last-child { border-bottom: 0; }
.point-session-debts__list strong, .point-session-debts__list small { display: block; }
.point-session-debts__list strong { font-size: .82rem; }
.point-session-debts__list small { margin-top: .25rem; color: var(--ui-text-muted); font-size: .68rem; line-height: 1.4; }
.point-session-debts__list b { font-size: .78rem; white-space: nowrap; }
.constat-dossiers__module { padding: 1rem 1.125rem 0; border-top: 1px solid var(--ui-border); }
.constat-dossiers__module > header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: .55rem; }
.constat-dossiers__module > header h3 { margin: 0; font-size: .92rem; }
.constat-dossiers__module > p { margin: 0 0 .75rem; color: var(--ui-text-muted); font-size: .72rem; line-height: 1.45; }
.constat-dossiers .customer-account-list { max-height: none; }

.person-fiche-list { margin: 0 0 1rem; }
.person-fiche-list > header { margin-bottom: 1rem; }
.person-fiche-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr)); }
.person-fiche { padding: 1rem 1.125rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
.person-fiche > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: .85rem; }
.person-fiche > header strong, .person-fiche > header small { display: block; }
.person-fiche > header small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .67rem; }
.person-fiche > dl { display: grid; margin: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.person-fiche > dl div { padding: .55rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.person-fiche > dl dt { color: var(--ui-text-muted); font-size: .62rem; }
.person-fiche > dl dd { margin: .2rem 0 0; font-size: .7rem; font-weight: 750; }
.person-fiche__timeline { margin: .85rem 0 0; padding: 0; list-style: none; }
.person-fiche__timeline li { display: grid; grid-template-columns: 6.5rem minmax(0, 1fr); gap: .65rem; padding: .45rem 0; border-top: 1px solid var(--ui-border); font-size: .72rem; }
.person-fiche__timeline li > span { font-weight: 800; }
.person-fiche__timeline li.is-ajout > span { color: var(--ui-primary); }
.person-fiche__timeline li.is-retrait > span { color: var(--ui-text-muted); }
.person-fiche__timeline strong, .person-fiche__timeline small { display: block; }
.person-fiche__timeline small { margin-top: .15rem; color: var(--ui-text-muted); font-size: .65rem; line-height: 1.4; }
.person-fiche__timeline a { display: inline-block; margin-top: .2rem; font-size: .65rem; }
.dossier-operations { margin: .75rem 0 0; }
.dossier-operations > summary {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .35rem .75rem;
    cursor: pointer;
    list-style: none;
    padding: .55rem .7rem;
    border-radius: .55rem;
    background: var(--ui-surface-muted);
    color: var(--ui-text);
    font-size: .78rem;
    font-weight: 700;
}
.dossier-operations > summary::-webkit-details-marker { display: none; }
.dossier-operations > summary::before {
    content: '▸';
    display: inline-block;
    margin-right: .15rem;
    color: var(--ui-text-muted);
    transition: transform .15s ease;
}
.dossier-operations[open] > summary::before { transform: rotate(90deg); }
.dossier-operations > summary small {
    font-size: .65rem;
    font-weight: 500;
    color: var(--ui-text-muted);
}
.dossier-operations__list { margin: .35rem 0 0; }
.dossier-operations--single .dossier-operations__list { margin-top: .55rem; }
.dossier-operations__list li { padding: .35rem 0; font-size: .7rem; grid-template-columns: 5.75rem minmax(0, 1fr); gap: .5rem; }
.dossier-operations__actor {
    display: block;
    margin-top: .12rem;
    color: var(--ui-text-muted);
    font-size: .62rem;
}
.person-fiche-conflicts { margin: 0 0 1rem; }
.person-fiche-conflicts ul { margin: .45rem 0 0; padding-left: 1.1rem; }
.person-fiche-conflicts li { margin: .2rem 0; }
.person-fiche-merge { display: grid; gap: .65rem; margin: .65rem 0 1rem; padding: .75rem; background: var(--ui-surface, #fff); border: 1px solid var(--ui-border, #d8dee6); border-radius: .5rem; }
@media (min-width: 768px) {
    .person-fiche-merge { grid-template-columns: 1fr 1fr; }
    .person-fiche-merge .ui-field--wide,
    .person-fiche-merge .ui-button { grid-column: 1 / -1; }
}

.point-stock-table th, .point-stock-table td { white-space: nowrap; }
.point-stock-table th:first-child, .point-stock-table td:first-child { white-space: normal; }
.point-observation__body { padding: 1.125rem; }

.point-summary { position: sticky; top: 5.5rem; }
.point-summary__card { overflow: hidden; border: 1px solid #4b2b20; border-radius: var(--ui-radius-lg); background: var(--ui-sidebar); color: #fff; box-shadow: 0 1rem 2rem rgba(54,27,17,.16); }
.point-summary__card > header { padding: 1.125rem; border-bottom: 1px solid rgba(255,255,255,.13); }
.point-summary__card .ui-eyebrow { color: #e9a98c; }
.point-summary__card h2 { margin: 0; color: #fff; font-size: 1.1rem; }
.point-summary dl { display: grid; margin: 0; padding: 1rem 1.125rem; gap: .65rem; }
.point-summary dl div { display: flex; justify-content: space-between; gap: 1rem; }
.point-summary dt { color: #afbbce; font-size: .71rem; }
.point-summary dd { margin: 0; font-size: .73rem; font-weight: 750; text-align: right; }
.point-summary dl .is-negative dd { color: #ffb7b7; }
.point-summary__total { padding: 1rem 1.125rem; background: var(--ui-primary); }
.point-summary__total span, .point-summary__secondary span { display: block; font-size: .7rem; font-weight: 650; }
.point-summary__total strong { display: block; margin-top: .35rem; font-size: clamp(1.65rem, 3vw, 2.2rem); letter-spacing: -.04em; }
.point-summary__total small { font-size: .65rem; }
.point-summary__secondary { padding: 1rem 1.125rem; border-bottom: 1px solid rgba(255,255,255,.13); }
.point-summary__secondary strong, .point-summary__secondary small { display: block; margin-top: .3rem; }
.point-summary__secondary strong { font-size: .9rem; }
.point-summary__secondary small { color: #afbbce; font-size: .65rem; line-height: 1.4; }
.point-summary__note { display: flex; margin: 1rem 1.125rem; gap: .6rem; color: #c6d0df; }
.point-summary__note > span { color: #ffd28a; font-weight: 800; }
.point-summary__note p { margin: 0; font-size: .68rem; line-height: 1.45; }
.point-submit { width: calc(100% - 2.25rem); margin: 0 1.125rem; border: 0; cursor: pointer; }
.point-summary__locked { display: flex; margin: 0 1.125rem; padding: .75rem; align-items: center; gap: .5rem; border-radius: .625rem; background: rgba(255,255,255,.08); color: #c6d0df; }
.point-summary__locked p { margin: 0; font-size: .72rem; }
.point-print { width: 100%; min-height: 2.75rem; margin-top: .5rem; border: 0; background: transparent; color: #c6d0df; cursor: pointer; font: inherit; font-size: .72rem; font-weight: 650; }
.point-print:hover { color: #fff; text-decoration: underline; }

.handover-card { display: grid; margin-top: 1rem; padding: 1.125rem; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 1.5rem; }
.handover-card h2 { margin: 0; font-size: 1.05rem; }
.handover-card > div:first-child > p:last-child { margin: .35rem 0 0; color: var(--ui-text-muted); font-size: .75rem; }
.handover-status { display: flex; align-items: center; gap: .5rem; }
.handover-status span { padding: .45rem .65rem; border-radius: 999px; background: #eef2f6; color: #536074; font-size: .7rem; font-weight: 750; }
.handover-status span.is-done { background: var(--ui-success-soft); color: var(--ui-success); }
.handover-status i { color: var(--ui-text-muted); font-style: normal; }

/* Mobile Money et finances */
.finance-tabs { display: flex; margin-bottom: 1.5rem; padding: .35rem; gap: .25rem; overflow-x: auto; border: 1px solid var(--ui-border); border-radius: .75rem; background: var(--ui-surface); }
.finance-tabs a { min-height: 2.5rem; padding: .65rem .85rem; border-radius: .5rem; color: var(--ui-text-muted); font-size: .75rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.finance-tabs a:hover, .finance-tabs a.is-active { background: var(--ui-primary-soft); color: var(--ui-primary-dark); }
.section-heading { display: flex; margin: 1.5rem 0 .85rem; align-items: end; justify-content: space-between; gap: 1rem; }
.section-heading h2 { margin: 0; color: var(--ui-text); font-size: 1.2rem; letter-spacing: -.02em; }
.section-heading div > p:last-child { margin: .4rem 0 0; color: var(--ui-text-muted); font-size: .78rem; line-height: 1.5; }

.mobile-account-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; }
.mobile-account { min-width: 0; overflow: hidden; border: 1px solid var(--ui-border); border-top: .2rem solid var(--network-color, var(--ui-primary)); border-radius: var(--ui-radius-lg); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.mobile-account--mtn { --network-color: #e4ae13; }
.mobile-account--moov { --network-color: #168751; }
.mobile-account--celtis { --network-color: #1769e0; }
.mobile-account > header { display: flex; padding: 1rem; align-items: center; gap: .7rem; border-bottom: 1px solid var(--ui-border); }
.mobile-account__mark { display: grid; width: 2.25rem; height: 2.25rem; flex: 0 0 2.25rem; place-items: center; border-radius: .65rem; background: color-mix(in srgb, var(--network-color) 14%, white); color: var(--network-color); font-size: .85rem; font-weight: 850; }
.mobile-account > header div { min-width: 0; flex: 1; }
.mobile-account h3 { overflow: hidden; margin: 0; color: var(--ui-text); font-size: .9rem; text-overflow: ellipsis; white-space: nowrap; }
.mobile-account header p { margin: .2rem 0 0; color: var(--ui-text-muted); font-size: .68rem; }
.mobile-account__figures { display: grid; margin: 0; padding: .9rem 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
.mobile-account__figures div { min-width: 0; }
.mobile-account__figures dt { color: var(--ui-text-muted); font-size: .66rem; }
.mobile-account__figures dd { margin: .25rem 0 0; color: var(--ui-text); font-size: .76rem; font-weight: 750; }
.mobile-account__figures small { font-size: .57rem; }
.mobile-account__expected { display: flex; margin: 0 1rem 1rem; padding: .75rem; align-items: center; justify-content: space-between; gap: .75rem; border-radius: .65rem; background: var(--ui-surface-muted); }
.mobile-account__expected span { color: var(--ui-text-muted); font-size: .68rem; }
.mobile-account__expected strong { font-size: .82rem; white-space: nowrap; }
.mobile-account__form { display: grid; padding: 1rem; gap: .75rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.mobile-account__form .ui-button { width: 100%; cursor: pointer; }
.mobile-account__closed { display: flex; min-height: 5.25rem; padding: 1rem; align-items: center; justify-content: space-between; gap: .75rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.mobile-account__closed div span, .mobile-account__closed div strong { display: block; }
.mobile-account__closed div span { color: var(--ui-text-muted); font-size: .66rem; }
.mobile-account__closed div strong { margin-top: .25rem; font-size: .82rem; }
.mobile-account__closed + .mobile-account__form { border-top: 0; }
.mobile-account__locked { margin: 0; padding: .85rem 1rem 1rem; color: var(--ui-text-muted); font-size: .72rem; border-top: 1px solid var(--ui-border); }

.finance-operation-grid { display: grid; margin-top: 1rem; grid-template-columns: minmax(20rem,.85fr) minmax(0,1.15fr); gap: 1rem; align-items: start; }
.finance-form-card { overflow: hidden; }
.finance-inline-alert { margin: 1rem 1rem 0; }
.finance-form .sale-debt-fields { grid-column: 1 / -1; }
.finance-form > .ui-button { grid-column: 1 / -1; justify-self: start; cursor: pointer; }
.finance-form > .ui-button:disabled { cursor: not-allowed; opacity: .5; }
.finance-form--two { grid-template-columns: repeat(2,minmax(0,1fr)); }

.finance-ledger { overflow: hidden; }
.finance-ledger ol { margin: 0; padding: 0; list-style: none; }
.finance-ledger li { display: grid; padding: .8rem 1.125rem; align-items: center; grid-template-columns: auto minmax(0,1fr) auto; gap: .75rem; border-bottom: 1px solid #edf0f4; }
.finance-ledger li:last-child { border-bottom: 0; }
.finance-ledger__type { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: 50%; font-size: .85rem; font-weight: 850; }
.finance-ledger__type.is-deposit { background: #fff3d9; color: var(--ui-warning); }
.finance-ledger__type.is-withdrawal { background: var(--ui-success-soft); color: var(--ui-success); }
.finance-ledger li div { min-width: 0; }
.finance-ledger li div strong, .finance-ledger li div small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.finance-ledger li div strong { color: var(--ui-text); font-size: .77rem; }
.finance-ledger li div small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .66rem; }
.finance-ledger li > b { font-size: .75rem; white-space: nowrap; }
.finance-ledger li.is-cancelled { opacity: .72; }
.finance-ledger li.is-cancelled > b { text-decoration: line-through; }

.finance-customer-section { margin-top: 2rem; padding-top: .25rem; border-top: 1px solid var(--ui-border); }
.customer-register { overflow: hidden; }
.customer-account-list { display: grid; max-height: 50rem; overflow-y: auto; }
.customer-account-list > article { padding: 1rem 1.125rem; border-bottom: 1px solid var(--ui-border); }
.customer-account-list > article:last-child { border-bottom: 0; }
.customer-account-list__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.customer-account-list__head div strong, .customer-account-list__head div small { display: block; }
.customer-account-list__head div strong { font-size: .83rem; }
.customer-account-list__head div small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .67rem; }
.customer-account-list article > p { margin: .65rem 0; color: var(--ui-text-muted); font-size: .72rem; }
.customer-account-list article > dl { display: grid; margin: 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
.customer-account-list article > dl div { padding: .55rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.customer-account-list article > dl dt { color: var(--ui-text-muted); font-size: .62rem; }
.customer-account-list article > dl dd { margin: .2rem 0 0; font-size: .7rem; font-weight: 750; }
#controller-contributions > form.ui-form-grid { padding: 1rem 1.125rem; }
#controller-contributions > .customer-account-list__heading {
    margin: 0;
    padding: 1rem 1.125rem 0;
    border-top: 1px solid var(--ui-border);
    font-size: .92rem;
}
#controller-contributions > .customer-account-list__intro {
    margin: .35rem 0 0;
    padding: 0 1.125rem .85rem;
    color: var(--ui-text-muted);
    font-size: .72rem;
    line-height: 1.45;
}
.customer-account-action { display: flex; margin-top: .75rem; padding-top: .75rem; align-items: end; gap: .75rem; border-top: 1px dashed var(--ui-border); flex-wrap: wrap; }
.customer-account-action .ui-field:has(select[name="source"]) { flex: 1 1 100%; }
.customer-account-action .ui-field { flex: 1; }
.customer-account-action .ui-button { flex: 0 0 auto; cursor: pointer; }

/* Argent à récupérer */
.advance-metrics { margin-top: 1rem; }
.advance-tabs { margin-top: 0; }
.advance-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(20rem,.75fr); gap: 1rem; align-items: start; }
.advance-main { display: grid; min-width: 0; gap: 1rem; }
.advance-register, .advance-create { overflow: hidden; }
.advance-list { display: grid; }
.advance-list__item { display: grid; padding: 1rem 1.125rem; grid-template-columns: minmax(11rem,1.15fr) minmax(8rem,.8fr) minmax(15rem,1.1fr) minmax(9rem,.8fr) auto; align-items: center; gap: 1rem; border-bottom: 1px solid var(--ui-border); }
.advance-list__item:last-child { border-bottom: 0; }
.advance-list__item.is-selected { background: #fff8f4; box-shadow: inset .2rem 0 var(--ui-primary); }
.advance-list__identity { display: flex; min-width: 0; align-items: center; gap: .65rem; }
.advance-list__identity > span { display: grid; width: 2.25rem; height: 2.25rem; flex: 0 0 2.25rem; place-items: center; border-radius: 50%; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .78rem; font-weight: 850; }
.advance-list__identity div { min-width: 0; }
.advance-list__identity strong, .advance-list__identity small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.advance-list__identity strong { font-size: .8rem; }
.advance-list__identity small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .65rem; }
.advance-list__reason span, .advance-list__reason strong { display: block; }
.advance-list__reason span { color: var(--ui-text-muted); font-size: .62rem; }
.advance-list__reason strong { margin-top: .2rem; overflow: hidden; font-size: .7rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.advance-list__item > dl { display: grid; margin: 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .4rem; }
.advance-list__item > dl dt { color: var(--ui-text-muted); font-size: .59rem; }
.advance-list__item > dl dd { margin: .18rem 0 0; font-size: .67rem; font-weight: 750; white-space: nowrap; }
.advance-list__status { display: grid; justify-items: start; gap: .3rem; }
.advance-list__status small { color: var(--ui-text-muted); font-size: .62rem; }
.advance-list__item > .ui-button { min-height: 2.5rem; padding: .55rem .7rem; font-size: .68rem; white-space: nowrap; }
.advance-reason { grid-column: 1 / -1; }

.advance-detail { position: sticky; top: 5.5rem; min-width: 0; }
.advance-detail__card { overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-lg); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.advance-detail__card > header { display: flex; padding: 1.125rem; align-items: center; gap: .75rem; border-bottom: 1px solid var(--ui-border); }
.advance-detail__avatar { display: grid; width: 2.75rem; height: 2.75rem; flex: 0 0 2.75rem; place-items: center; border-radius: 50%; background: var(--ui-primary); color: #fff; font-weight: 850; }
.advance-detail__card > header h2 { margin: 0; font-size: 1rem; }
.advance-detail__card > header a { display: inline-block; margin-top: .25rem; color: var(--ui-primary) !important; font-size: .7rem; font-weight: 650; text-decoration: none; }
.advance-detail__card > .ui-badge { margin: 1rem 1.125rem 0; }
.advance-detail__amounts { display: grid; margin: 0; padding: 1rem 1.125rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
.advance-detail__amounts div { min-width: 0; padding: .65rem; border-radius: .55rem; background: var(--ui-surface-muted); }
.advance-detail__amounts dt { color: var(--ui-text-muted); font-size: .6rem; }
.advance-detail__amounts dd { margin: .25rem 0 0; font-size: .7rem; font-weight: 800; overflow-wrap: anywhere; }
.advance-detail__facts { display: grid; padding: 0 1.125rem 1rem; gap: .5rem; }
.advance-detail__facts p { display: flex; margin: 0; justify-content: space-between; gap: 1rem; font-size: .68rem; }
.advance-detail__facts span { color: var(--ui-text-muted); }
.advance-detail__facts strong { max-width: 65%; text-align: right; }
.advance-repayment-form { display: grid; padding: 1.125rem; gap: .8rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.advance-repayment-form h3 { margin: 0; font-size: .85rem; }
.advance-repayment-form .ui-button { width: 100%; cursor: pointer; }
.advance-complete { margin: 0 1.125rem 1rem; }
.advance-history { padding: 1rem 1.125rem; border-top: 1px solid var(--ui-border); }
.advance-history h3 { margin: 0 0 .75rem; font-size: .83rem; }
.advance-history ol { display: grid; margin: 0; padding: 0; gap: .6rem; list-style: none; }
.advance-history li { display: flex; align-items: center; gap: .6rem; }
.advance-history li > span { display: grid; width: 1.65rem; height: 1.65rem; flex: 0 0 1.65rem; place-items: center; border-radius: 50%; background: var(--ui-success-soft); color: var(--ui-success); font-size: .65rem; font-weight: 800; }
.advance-history li strong, .advance-history li small { display: block; }
.advance-history li strong { font-size: .72rem; }
.advance-history li small, .advance-history > p { margin-top: .15rem; color: var(--ui-text-muted); font-size: .63rem; line-height: 1.4; }
.advance-detail__empty { overflow: hidden; }

/* Historique des ventes */
.history-filter-card { margin-bottom: 1rem; overflow: hidden; }
.history-filters { display: grid; padding: 1rem 1.125rem; grid-template-columns: minmax(14rem,1fr) minmax(11rem,.55fr) auto auto; align-items: end; gap: .75rem; }
.history-filters .ui-button { cursor: pointer; white-space: nowrap; }
.history-summary { display: grid; margin-bottom: 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.history-summary article { min-width: 0; padding: 1rem 1.125rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
.history-summary article > span, .history-summary article > strong, .history-summary article > small { display: block; }
.history-summary article > span { color: var(--ui-text-muted); font-size: .7rem; font-weight: 650; }
.history-summary article > strong { margin-top: .45rem; color: var(--ui-text); font-size: 1.3rem; letter-spacing: -.025em; }
.history-summary article > strong small { display: inline; font-size: .62rem; }
.history-summary article > small { margin-top: .35rem; color: var(--ui-text-muted); font-size: .65rem; line-height: 1.4; }
.history-register { min-width:0; max-width:100%; overflow: hidden; }
.history-register .ui-table-wrap { min-width:0; max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; }
.history-range { color: var(--ui-text-muted); font-size: .7rem; font-weight: 650; }
.history-table { min-width: 64rem; }
.history-table td code { color: var(--ui-primary-dark); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .68rem; font-weight: 750; white-space: nowrap; }
.history-table td time strong, .history-table td time small { display: block; }
.history-table td time small { margin-top: .15rem; color: var(--ui-text-muted); }
.history-table tr.is-cancelled { background: #fffafa; }
.history-table tr.is-cancelled td:not(:last-child) { opacity: .7; }
.history-table tr.is-cancelled td:nth-child(6) strong { text-decoration: line-through; }
.history-ticket-link { display: inline-flex; min-height: 2.5rem; padding: .55rem .65rem; align-items: center; color: var(--ui-primary) !important; font-size: .68rem; font-weight: 750; text-decoration: none; white-space: nowrap; }
.history-ticket-link:hover { text-decoration: underline; }
.history-pagination { display: flex; min-height: 4rem; padding: .75rem 1.125rem; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.history-pagination p { margin: 0; color: var(--ui-text-muted); font-size: .7rem; }
.history-pagination nav { display: flex; align-items: center; gap: .35rem; }
.history-pagination nav :is(a, span, strong) { display: inline-flex; min-height: 2.5rem; padding: .55rem .7rem; align-items: center; justify-content: center; border: 1px solid var(--ui-border); border-radius: .5rem; background: #fff; font-size: .68rem; font-weight: 700; text-decoration: none; }
.history-pagination nav a:hover { border-color: #9bbcf0; color: var(--ui-primary); }
.history-pagination nav strong { min-width: 2.5rem; border-color: var(--ui-primary); background: var(--ui-primary); color: #fff; }
.history-pagination nav span[aria-disabled="true"] { color: #98a2b3; }
.history-note { display: flex; margin-top: 1rem; padding: .9rem 1rem; align-items: flex-start; gap: .7rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
.history-note > span { display: grid; width: 1.75rem; height: 1.75rem; flex: 0 0 1.75rem; place-items: center; border-radius: 50%; background: var(--ui-success-soft); color: var(--ui-success); font-size: .7rem; font-weight: 800; }
.history-note strong { display: block; font-size: .75rem; }
.history-note p { margin: .25rem 0 0; color: var(--ui-text-muted); font-size: .68rem; line-height: 1.45; }

/* Tableau de bord Contrôleur */
.control-priority-grid { display: grid; margin-bottom: 1rem; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.control-priority { display: grid; min-height: 7.5rem; padding: 1rem; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .75rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); color: var(--ui-text); text-decoration: none; box-shadow: 0 1px 2px rgba(16,24,40,.03); }
.control-priority:hover { border-color: var(--ui-primary); box-shadow: var(--ui-shadow); }
.control-priority.has-work { border-top: .2rem solid var(--ui-warning); }
.control-priority.has-alert { border-color: #efb5b5; border-top: .2rem solid var(--ui-danger); background: #fffafa; }
.control-priority__icon { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; border-radius: .7rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .9rem; font-weight: 850; }
.control-priority.has-work .control-priority__icon { background: #fff3d9; color: var(--ui-warning); }
.control-priority.has-alert .control-priority__icon { background: var(--ui-danger-soft); color: var(--ui-danger); }
.control-priority div > span, .control-priority div > strong, .control-priority div > small { display: block; }
.control-priority div > span { color: var(--ui-text-muted); font-size: .7rem; font-weight: 650; }
.control-priority div > strong { margin-top: .25rem; font-size: 1.6rem; letter-spacing: -.03em; }
.control-priority div > small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .63rem; line-height: 1.35; }
.control-task-grid, .control-secondary-grid { display: grid; margin-bottom: 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; align-items: start; }
.control-secondary-grid { grid-template-columns: minmax(0,1.35fr) minmax(18rem,.65fr); }
.control-task-card, .control-handovers, .control-stock-alerts, .control-day-summary { overflow: hidden; }
.control-task-list { margin: 0; padding: 0; list-style: none; }
.control-task-list li { display: grid; padding: .85rem 1.125rem; grid-template-columns: auto minmax(0,1fr) auto auto; align-items: center; gap: .75rem; border-bottom: 1px solid #edf0f4; }
.control-task-list li:last-child { border-bottom: 0; }
.control-person-avatar, .control-task-symbol { display: grid; width: 2.15rem; height: 2.15rem; flex: 0 0 2.15rem; place-items: center; border-radius: 50%; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .72rem; font-weight: 850; }
.control-task-symbol { border-radius: .6rem; }
.control-task-list li div { min-width: 0; }
.control-task-list li div strong, .control-task-list li div small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.control-task-list li div strong { font-size: .78rem; }
.control-task-list li div small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .64rem; }
.control-task-list li > a { display: inline-flex; min-height: 2.5rem; padding: .55rem .65rem; align-items: center; color: var(--ui-primary) !important; font-size: .68rem; font-weight: 750; text-decoration: none; }
.control-task-list li > a:hover { text-decoration: underline; }
.control-handover-list { display: grid; }
.control-handover-list > article { display: grid; padding: .9rem 1.125rem; grid-template-columns: minmax(10rem,1fr) auto auto; align-items: center; gap: 1rem; border-bottom: 1px solid var(--ui-border); }
.control-handover-list > article:last-child { border-bottom: 0; }
.control-handover-list > article > div:first-child { display: flex; min-width: 0; align-items: center; gap: .65rem; }
.control-handover-list p { min-width: 0; margin: 0; }
.control-handover-list p strong, .control-handover-list p small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.control-handover-list p strong { font-size: .78rem; }
.control-handover-list p small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .64rem; }
.control-handover-progress { display: flex; align-items: center; gap: .35rem; }
.control-handover-progress span { padding: .4rem .55rem; border-radius: 999px; background: #eef2f6; color: #657084; font-size: .63rem; font-weight: 700; white-space: nowrap; }
.control-handover-progress span.is-done { background: var(--ui-success-soft); color: var(--ui-success); }
.control-handover-progress i { color: var(--ui-text-muted); font-style: normal; }
.control-handover-list form .ui-button { min-height: 2.5rem; padding: .55rem .7rem; border: 0; cursor: pointer; font-size: .68rem; }
.control-stock-alerts ul { margin: 0; padding: 0; list-style: none; }
.control-stock-alerts li { display: flex; padding: .8rem 1.125rem; align-items: center; justify-content: space-between; gap: .75rem; border-bottom: 1px solid #edf0f4; }
.control-stock-alerts li:last-child { border-bottom: 0; }
.control-stock-alerts li strong, .control-stock-alerts li small { display: block; }
.control-stock-alerts li strong { font-size: .75rem; }
.control-stock-alerts li small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .63rem; }
.control-day-summary > dl { display: grid; margin: 0; padding: 1.125rem; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }
.control-day-summary > dl > div { min-width: 0; padding: .85rem; border-radius: .7rem; background: var(--ui-surface-muted); }
.control-day-summary dt { color: var(--ui-text-muted); font-size: .68rem; }
.control-day-summary dd { margin: .35rem 0 0; font-size: 1rem; font-weight: 800; }
.control-day-summary dd small { font-size: .6rem; }
.control-day-summary dl > div > small { display: block; margin-top: .3rem; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.4; }
.live-session-monitor,.common-stock-monitor { margin-bottom:1rem; }
.live-session-list { display:grid; padding:1rem; gap:.85rem; }
.live-session-list > article { overflow:hidden; border:1px solid var(--ui-border); border-radius:.75rem; background:var(--ui-surface); }
.live-session-list article > header { display:flex; padding:.85rem; align-items:center; justify-content:space-between; gap:.75rem; border-bottom:1px solid var(--ui-border); background:var(--ui-surface-muted); }
.live-session-list header strong,.live-session-list header small { display:block; }.live-session-list header small { margin-top:.2rem; color:var(--ui-text-muted); font-size:.64rem; }
.live-position-grid { display:grid; padding:.85rem; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.live-position-grid > section { padding:.7rem; border:1px solid var(--ui-border); border-radius:.65rem; }
.live-position-grid > section > strong { display:block; margin-bottom:.55rem; font-size:.72rem; }
.live-position-grid dl { display:grid; margin:0; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.4rem; }
.live-position-grid dl > div { min-width:0; padding:.5rem; border-radius:.5rem; background:var(--ui-surface-muted); }
.live-position-grid dt { color:var(--ui-text-muted); font-size:.57rem; }.live-position-grid dd { margin:.2rem 0 0; font-size:.65rem; font-weight:800; overflow-wrap:anywhere; }
.live-position-grid .is-current { background:var(--ui-primary-soft); }.live-position-grid .is-current dd { color:var(--ui-primary); }
.live-session-list article > footer { padding:.75rem .85rem; border-top:1px solid var(--ui-border); text-align:right; }

/* Contrôle de caisse */
.cash-review-metrics { margin-bottom: 1rem; }
.cash-case-list { display: grid; gap: 1rem; }
.cash-case { overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-lg); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.cash-case > summary { display: grid; min-height: 5rem; padding: .9rem 1.125rem; grid-template-columns: auto minmax(0,1fr) auto auto auto; align-items: center; gap: .85rem; cursor: pointer; list-style: none; }
.cash-case > summary::-webkit-details-marker { display: none; }
.cash-case > summary:hover { background: var(--ui-surface-muted); }
.cash-case > summary > div:nth-child(2) { min-width: 0; }
.cash-case > summary > div:nth-child(2) strong, .cash-case > summary > div:nth-child(2) small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cash-case > summary > div:nth-child(2) strong { font-size: .82rem; }
.cash-case > summary > div:nth-child(2) small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .65rem; }
.cash-case > summary > div:nth-child(3) span, .cash-case > summary > div:nth-child(3) strong { display: block; text-align: right; }
.cash-case > summary > div:nth-child(3) span { color: var(--ui-text-muted); font-size: .62rem; }
.cash-case > summary > div:nth-child(3) strong { margin-top: .2rem; font-size: .8rem; }
.cash-case > summary > i { color: var(--ui-text-muted); font-style: normal; transition: transform .15s ease; }
.cash-case[open] > summary { border-bottom: 1px solid var(--ui-border); background: #fff8f4; }
.cash-case[open] > summary > i { transform: rotate(180deg); }
.cash-case__body { padding: 1rem; }
.cash-review-steps { display:grid; margin:0 0 1rem; padding:0; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; list-style:none; }
.cash-review-steps li { display:flex; padding:.75rem; align-items:center; gap:.65rem; border:1px solid var(--ui-border); border-radius:.75rem; background:var(--ui-surface); }
.cash-review-steps li > span { display:grid; width:1.9rem; height:1.9rem; place-items:center; flex:0 0 auto; border-radius:50%; background:var(--ui-surface-muted); font-weight:800; }
.cash-review-steps li.is-current { border-color:var(--ui-primary); background:var(--ui-primary-soft); }
.cash-review-steps strong,.cash-review-steps small { display:block; }
.cash-review-steps strong { font-size:.78rem; }
.cash-review-steps small { margin-top:.15rem; color:var(--ui-text-muted); font-size:.62rem; }
.cash-case__overview { display: grid; margin-bottom: 1rem; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }
.cash-case__overview article { padding: .75rem .85rem; border-radius: .65rem; background: var(--ui-surface-muted); }
.cash-case__overview span, .cash-case__overview strong { display: block; }
.cash-case__overview span { color: var(--ui-text-muted); font-size: .65rem; }
.cash-case__overview strong { margin-top: .3rem; font-size: .85rem; }
.cash-case__overview strong small { font-size: .58rem; }
.cash-case__grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(19rem,24rem); align-items: start; gap: 1rem; }
.cash-case__checks { display: grid; min-width: 0; gap: .85rem; }
.cash-check-section { overflow: hidden; border: 1px solid var(--ui-border); border-radius: .75rem; }
.cash-check-section > header { display: flex; min-height: 3.5rem; padding: .75rem .9rem; align-items: center; justify-content: space-between; gap: .75rem; border-bottom: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.cash-check-section > header h3 { margin: 0; font-size: .8rem; }
.cash-mobile-grid { display: grid; padding: .85rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.cash-supporting-details { overflow:hidden; border:1px solid var(--ui-border); border-radius:.75rem; background:var(--ui-surface); }
.cash-supporting-details > summary { display:flex; padding:.9rem; align-items:center; justify-content:space-between; gap:.75rem; cursor:pointer; background:var(--ui-surface-muted); }
.cash-supporting-details > summary strong,.cash-supporting-details > summary small { display:block; }
.cash-supporting-details > summary small { margin-top:.2rem; color:var(--ui-text-muted); font-size:.65rem; }
.cash-supporting-details[open] > summary { border-bottom:1px solid var(--ui-border); }
.cash-supporting-details > .cash-check-section,.cash-supporting-details > .ui-alert { margin:.75rem; }
.cash-mobile-grid > article { min-width: 0; padding: .75rem; border: 1px solid var(--ui-border); border-radius: .65rem; }
.cash-mobile-grid article > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.cash-mobile-grid article > div:first-child strong { overflow: hidden; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.cash-mobile-grid dl { display: grid; margin: .65rem 0 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .35rem; }
.cash-mobile-grid dt { color: var(--ui-text-muted); font-size: .57rem; }
.cash-mobile-grid dd { margin: .15rem 0 0; font-size: .63rem; font-weight: 750; overflow-wrap: anywhere; }
.cash-mobile-grid article > p { margin: .6rem 0 0; color: var(--ui-danger); font-size: .62rem; font-weight: 700; }
.cash-controller-count { display: grid; margin-top: .7rem; padding-top: .7rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; border-top: 1px solid var(--ui-border); }
.cash-stock-grid .cash-controller-count { grid-template-columns: repeat(auto-fit,minmax(8rem,1fr)); }
.cash-controller-count .ui-field span { font-size: .65rem; }
.remittance-layout { display:grid; margin-top:1rem; grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr); gap:1rem; align-items:start; }
.remittance-form { display:grid; padding:1rem; gap:.85rem; }
.remittance-amounts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.remittance-list { display:grid; padding:1rem; gap:.75rem; }
.remittance-list > article { overflow:hidden; border:1px solid var(--ui-border); border-radius:.75rem; background:var(--ui-surface); }
.remittance-list article > header { display:flex; padding:.85rem; align-items:center; justify-content:space-between; gap:.75rem; border-bottom:1px solid var(--ui-border); }
.remittance-list header strong,.remittance-list header small { display:block; }.remittance-list header small { margin-top:.2rem; color:var(--ui-text-muted); font-size:.66rem; }
.closure-audit-list > article > dl { display:grid; margin:0; padding:.85rem; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; }
.closure-audit-list > article > dl > div { padding:.65rem; border-radius:.6rem; background:var(--ui-surface-muted); }
.closure-audit-list dt,.closure-audit-list dd,.closure-audit-list dd small { display:block; }
.closure-audit-list dt { color:var(--ui-text-muted); font-size:.62rem; }
.closure-audit-list dd { margin:.25rem 0 0; font-size:.72rem; font-weight:800; }
.closure-audit-list dd small { margin-top:.2rem; color:var(--ui-danger); font-size:.58rem; }
.closure-audit-timeline { display:grid; margin:0; padding:.85rem; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.55rem; list-style:none; border-bottom:1px solid var(--ui-border); }
.closure-audit-timeline li { min-width:0; padding:.7rem; border:1px solid var(--ui-border); border-radius:.65rem; background:var(--ui-surface); }
.closure-audit-timeline strong,.closure-audit-timeline small { display:block; }
.closure-audit-timeline strong { font-size:.68rem; }
.closure-audit-timeline small { margin-top:.3rem; color:var(--ui-text-muted); font-size:.59rem; line-height:1.4; }
.closure-audit-timeline .is-done { border-color:var(--ui-success); background:var(--ui-success-soft); }
.closure-audit-timeline .is-pending { border-color:var(--ui-warning); background:var(--ui-warning-soft, #fff5dc); }
.closure-audit-details { margin:.1rem .85rem .85rem; overflow:hidden; border:1px solid var(--ui-border); border-radius:.65rem; }
.closure-audit-details > summary { display:flex; min-height:2.8rem; padding:.7rem .8rem; align-items:center; justify-content:space-between; gap:.75rem; cursor:pointer; background:var(--ui-surface-muted); }
.closure-audit-details > summary strong,.closure-audit-details > summary small { display:block; }.closure-audit-details > summary small { margin-top:.15rem; color:var(--ui-text-muted); font-size:.59rem; }
.closure-audit-empty,.closure-audit-seal { margin:.75rem .85rem; color:var(--ui-text-muted); font-size:.64rem; }
.closure-signed-events { display:grid; margin:0; padding:.8rem; gap:.55rem; list-style:none; }
.closure-signed-events li { display:flex; padding:.65rem; align-items:flex-start; gap:.65rem; border-bottom:1px solid var(--ui-border); }
.closure-signed-events li:last-child { border-bottom:0; }
.closure-signed-events li > span { display:grid; width:1.65rem; height:1.65rem; place-items:center; flex:0 0 auto; border-radius:50%; background:var(--ui-primary-soft); color:var(--ui-primary); font-size:.62rem; font-weight:800; }
.closure-signed-events strong,.closure-signed-events small { display:block; }.closure-signed-events strong { font-size:.68rem; }.closure-signed-events small { margin-top:.18rem; color:var(--ui-text-muted); font-size:.59rem; }
.closure-audit-actions { display:flex; padding:.85rem; align-items:center; justify-content:space-between; gap:1rem; border-top:1px solid var(--ui-border); background:var(--ui-surface-muted); }
.closure-audit-actions p { max-width:38rem; margin:0; color:var(--ui-text-muted); font-size:.64rem; line-height:1.45; }
.remittance-list dl { display:grid; margin:0; padding:.75rem .85rem; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.5rem; background:var(--ui-surface-muted); }.remittance-list dt { color:var(--ui-text-muted); font-size:.62rem; }.remittance-list dd { margin:.2rem 0 0; font-size:.72rem; font-weight:800; }
.remittance-list article > p { margin:0; padding:.75rem .85rem; font-size:.72rem; line-height:1.5; }
.remittance-actions { display:grid; padding:.85rem; grid-template-columns:1fr 1fr; gap:.75rem; }.remittance-actions form { display:grid; gap:.65rem; align-content:end; }
.cash-document-list { margin: 0; padding: 0; list-style: none; }
.cash-document-list li { display: grid; padding: .75rem .9rem; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: .75rem; border-bottom: 1px solid #edf0f4; }
.cash-document-list li:last-child { border-bottom: 0; }
.cash-document-list li div { min-width: 0; }
.cash-document-list li div strong, .cash-document-list li div small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cash-document-list li div strong { font-size: .72rem; }
.cash-document-list li div small { margin-top: .18rem; color: var(--ui-text-muted); font-size: .62rem; }
.cash-document-list li > b { font-size: .68rem; white-space: nowrap; }
.cash-document-list li > a { display: inline-flex; min-height: 2.5rem; align-items: center; color: var(--ui-primary) !important; font-size: .65rem; font-weight: 700; }
.cash-stock-grid { display: grid; padding: .85rem; grid-template-columns: 1fr; gap: .65rem; }
.cash-stock-grid article { padding: .7rem; border-radius: .6rem; background: var(--ui-surface-muted); }
.cash-stock-grid article > strong { display: block; font-size: .68rem; }
.cash-stock-flow { margin-top:.6rem; overflow-x:auto; border:1px solid var(--ui-border); border-radius:.55rem; background:var(--ui-surface); }
.cash-stock-flow table { width:100%; min-width:42rem; border-collapse:collapse; }
.cash-stock-flow th,.cash-stock-flow td { padding:.55rem .65rem; border-bottom:1px solid var(--ui-border); text-align:right; font-size:.65rem; white-space:nowrap; }
.cash-stock-flow th:first-child,.cash-stock-flow td:first-child { text-align:left; }
.cash-stock-flow thead th { color:var(--ui-text-muted); background:var(--ui-surface-muted); font-size:.58rem; }
.cash-stock-flow tbody tr:last-child > * { border-bottom:0; }
.cash-stock-flow tbody td:nth-last-child(2),.cash-stock-flow tbody td:last-child { font-weight:800; }
.cash-seller-note { margin: 0; }

.cash-decision { position: sticky; top: 5.5rem; }
.cash-decision form { display: grid; padding: 1rem; gap: .85rem; border: 1px solid #4b2b20; border-radius: .85rem; background: var(--ui-sidebar); color: #fff; }
.cash-decision header .ui-eyebrow { color: #e9a98c; }
.cash-decision header h3 { margin: 0; color: #fff; font-size: .95rem; }
.cash-expected { padding: .8rem; border-radius: .65rem; background: rgba(255,255,255,.08); }
.cash-expected span, .cash-expected strong { display: block; }
.cash-expected span { color: #b8c3d4; font-size: .65rem; }
.cash-expected strong { margin-top: .25rem; font-size: 1.35rem; }
.cash-expected small { font-size: .58rem; }
.cash-decision .ui-field { color: #fff; }
.cash-decision .ui-field > small { color: #b8c3d4; }
.cash-variance { display: flex; padding: .7rem .8rem; align-items: center; justify-content: space-between; gap: .75rem; border-radius: .6rem; background: rgba(255,255,255,.08); }
.cash-variance span { color: #b8c3d4; font-size: .65rem; }
.cash-variance output { color: #fff; font-size: .7rem; font-weight: 800; text-align: right; }
.cash-variance output[data-state="shortage"] { color: #ffb5b5; }
.cash-variance output[data-state="surplus"] { color: #ffd28a; }
.cash-variance output[data-state="equal"] { color: #7be0b4; }
.cash-decision .ui-button { width: 100%; border: 0; cursor: pointer; }

/* Inventaire Contrôleur */
.inventory-metrics { margin-bottom: 1rem; }
.inventory-register { overflow: hidden; }
.inventory-register > .ui-card__header [data-inventory-variance-count][data-state="difference"] { background: var(--ui-danger-soft); color: var(--ui-danger); }
.inventory-list { display: grid; }
.inventory-item { border-bottom: 1px solid var(--ui-border); }
.inventory-item:last-child { border-bottom: 0; }
.inventory-item.has-inventory-difference { background: #fffafa; box-shadow: inset .22rem 0 var(--ui-danger); }
.inventory-item > header { display: flex; min-height: 4rem; padding: .8rem 1.125rem; align-items: center; gap: .7rem; background: var(--ui-surface-muted); }
.inventory-item__icon { display: grid; width: 2rem; height: 2rem; flex: 0 0 2rem; place-items: center; border-radius: .55rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .75rem; }
.inventory-item > header > div { min-width: 0; flex: 1; }
.inventory-item > header h3 { margin: 0; color: var(--ui-text); font-size: .8rem; }
.inventory-item > header p { margin: .2rem 0 0; color: var(--ui-text-muted); font-size: .63rem; }
.inventory-item__movement { display: grid; padding: .85rem 1.125rem; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .65rem; border-top: 1px solid var(--ui-border); border-bottom: 1px solid var(--ui-border); }
.inventory-item__movement > div { min-width: 0; padding: .65rem; border-radius: .55rem; background: var(--ui-surface-muted); }
.inventory-item__movement > div.is-total { background: var(--ui-primary-soft); }
.inventory-item__movement span, .inventory-item__movement strong, .inventory-item__movement small { display: block; }
.inventory-item__movement span { color: var(--ui-text-muted); font-size: .59rem; }
.inventory-item__movement strong { margin-top: .22rem; font-size: .8rem; }
.inventory-item__movement small { margin-top: .18rem; color: var(--ui-text-muted); font-size: .58rem; line-height: 1.35; }
.inventory-item__count { display: grid; padding: 1rem 1.125rem; grid-template-columns: minmax(15rem,.8fr) minmax(9rem,.35fr) minmax(15rem,1fr); align-items: end; gap: 1rem; }
.inventory-item__count fieldset { display: grid; min-width: 0; margin: 0; padding: 0; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; border: 0; }
.inventory-item__count legend { grid-column: 1 / -1; margin-bottom: .45rem; color: var(--ui-text); font-size: .7rem; font-weight: 750; }
.inventory-item__difference { display: grid; min-height: 4.6rem; padding: .7rem; align-content: center; border-radius: .6rem; background: var(--ui-surface-muted); text-align: center; }
.inventory-item__difference span, .inventory-item__difference output, .inventory-item__difference small { display: block; }
.inventory-item__difference span { color: var(--ui-text-muted); font-size: .6rem; }
.inventory-item__difference output { margin-top: .25rem; color: var(--ui-success); font-size: .8rem; font-weight: 850; }
.inventory-item__difference output[data-state="difference"] { color: var(--ui-danger); }
.inventory-item__difference small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .56rem; }
.inventory-item__note { min-width: 0; }
.inventory-item.has-inventory-difference .inventory-item__note > span::after { color: var(--ui-danger); content: " · obligatoire"; }
.inventory-submit-bar { position: sticky; bottom: 0; z-index: 10; display: flex; min-height: 4.75rem; padding: .85rem 1.125rem; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--ui-border); background: rgba(255,255,255,.96); backdrop-filter: blur(.6rem); }
.inventory-submit-bar strong, .inventory-submit-bar p { display: block; }
.inventory-submit-bar strong { font-size: .78rem; }
.inventory-submit-bar p { margin: .2rem 0 0; color: var(--ui-text-muted); font-size: .64rem; }
.inventory-submit-bar .ui-button { border: 0; cursor: pointer; }

/* Arrivages Contrôleur */
.arrival-metrics { margin-bottom: 1rem; }
.arrival-layout { display: grid; margin-top: 1rem; grid-template-columns: minmax(0,1.45fr) minmax(22rem,.72fr); align-items: start; gap: 1rem; }
.arrival-register { overflow: hidden; scroll-margin-top: 5rem; }
.arrival-case-list { display: grid; }
.arrival-case { border-bottom: 1px solid var(--ui-border); }
.arrival-case:last-child { border-bottom: 0; }
.arrival-case > summary { display: grid; min-height: 5rem; padding: .9rem 1rem; grid-template-columns: auto minmax(9rem,1fr) minmax(8rem,.72fr) minmax(8rem,.6fr) auto auto; align-items: center; gap: .75rem; cursor: pointer; list-style: none; }
.arrival-case > summary::-webkit-details-marker { display: none; }
.arrival-case > summary:hover { background: var(--ui-surface-muted); }
.arrival-case > summary > div { min-width: 0; }
.arrival-case > summary > div strong, .arrival-case > summary > div small, .arrival-case > summary > div span { display: block; }
.arrival-case > summary > div:first-of-type strong, .arrival-case > summary > div:first-of-type small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.arrival-case > summary > div strong { font-size: .72rem; }
.arrival-case > summary > div small, .arrival-case > summary > div span { margin-top: .18rem; color: var(--ui-text-muted); font-size: .6rem; }
.arrival-case > summary > i { color: var(--ui-text-muted); font-style: normal; transition: transform .15s ease; }
.arrival-case[open] > summary { border-bottom: 1px solid var(--ui-border); background: #fff8f4; }
.arrival-case[open] > summary > i { transform: rotate(180deg); }
.arrival-case__icon { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: .55rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-weight: 850; }
.arrival-case__body { display: grid; padding: 1rem; grid-template-columns: minmax(0,1fr) minmax(17rem,20rem); align-items: start; gap: 1rem; }
.arrival-evidence { min-width: 0; }
.arrival-evidence > header { display: flex; margin-bottom: .75rem; align-items: flex-start; justify-content: space-between; gap: .75rem; }
.arrival-evidence > header h3 { margin: 0; font-size: .85rem; }
.arrival-evidence > header > small { color: var(--ui-text-muted); font-size: .6rem; text-align: right; }
.arrival-line-list { display: grid; gap: .65rem; }
.arrival-line { overflow: hidden; border: 1px solid var(--ui-border); border-radius: .7rem; background: var(--ui-surface); }
.arrival-line > header { display: flex; padding: .7rem .8rem; align-items: center; justify-content: space-between; gap: .75rem; background: var(--ui-surface-muted); }
.arrival-line > header strong, .arrival-line > header small { display: block; }
.arrival-line > header strong { font-size: .7rem; }
.arrival-line > header small { margin-top: .16rem; color: var(--ui-text-muted); font-size: .58rem; }
.arrival-line dl { display: grid; margin: 0; padding: .75rem .8rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .6rem; }
.arrival-line dt { color: var(--ui-text-muted); font-size: .56rem; }
.arrival-line dd { margin: .18rem 0 0; font-size: .65rem; font-weight: 800; overflow-wrap: anywhere; }
.arrival-line > footer { display: flex; padding: .65rem .8rem; align-items: center; justify-content: space-between; gap: .75rem; border-top: 1px solid var(--ui-border); background: var(--ui-primary-soft); }
.arrival-line > footer span { color: var(--ui-text-muted); font-size: .6rem; }
.arrival-line > footer strong { font-size: .68rem; }
.arrival-case__facts { display: grid; margin: .75rem 0 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
.arrival-case__facts > div { padding: .65rem; border-radius: .55rem; background: var(--ui-surface-muted); }
.arrival-case__facts dt { color: var(--ui-text-muted); font-size: .56rem; }
.arrival-case__facts dd { margin: .18rem 0 0; font-size: .64rem; font-weight: 700; overflow-wrap: anywhere; }
.arrival-decision form { display: grid; padding: .9rem; gap: .8rem; border: 1px solid #4b2b20; border-radius: .8rem; background: var(--ui-sidebar); color: #fff; }
.arrival-decision header h3 { margin: 0; color: #fff; font-size: .85rem; }
.arrival-decision header .ui-eyebrow { color: #e9a98c; }
.arrival-decision .ui-field { color: #fff; }
.arrival-decision .ui-field > small { color: #b8c3d4; }
.arrival-decision__amount { padding: .75rem; border-radius: .6rem; background: rgba(255,255,255,.08); }
.arrival-decision__amount span, .arrival-decision__amount strong { display: block; }
.arrival-decision__amount span { color: #b8c3d4; font-size: .61rem; }
.arrival-decision__amount strong { margin-top: .25rem; font-size: 1.05rem; }
.arrival-decision__amount small { font-size: .56rem; }
.arrival-decision .ui-button { width: 100%; border: 0; cursor: pointer; }
.arrival-decision--closed { display: grid; min-height: 11rem; padding: 1rem; place-content: center; border: 1px dashed var(--ui-border); border-radius: .8rem; color: var(--ui-text-muted); text-align: center; }
.arrival-decision--closed > span { display: grid; width: 2.25rem; height: 2.25rem; margin: 0 auto .6rem; place-items: center; border-radius: 50%; background: var(--ui-success-soft); color: var(--ui-success); }
.arrival-decision--closed strong { color: var(--ui-text); font-size: .75rem; }
.arrival-decision--closed p { max-width: 16rem; margin: .35rem 0 0; font-size: .62rem; line-height: 1.5; }
.arrival-create { position: sticky; top: 5.25rem; overflow: hidden; scroll-margin-top: 5rem; }
.arrival-create > form { display: grid; }
.arrival-form-section { padding: .9rem 1rem; border-bottom: 1px solid var(--ui-border); }
.arrival-form-section > h3 { margin: 0 0 .75rem; color: var(--ui-text); font-size: .72rem; }
.arrival-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.arrival-form-grid__wide { grid-column: 1 / -1; }
.arrival-financial-preview { display: grid; margin: .8rem 0 0; grid-template-columns: 1fr; gap: .45rem; }
.arrival-financial-preview > div { display: flex; padding: .6rem .7rem; align-items: center; justify-content: space-between; gap: .75rem; border-radius: .55rem; background: var(--ui-surface-muted); }
.arrival-financial-preview dt { color: var(--ui-text-muted); font-size: .58rem; }
.arrival-financial-preview dd { margin: 0; font-size: .65rem; font-weight: 850; text-align: right; }
.arrival-create__footer { display: grid; padding: 1rem; gap: .75rem; }
.arrival-create__footer p { margin: 0; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.5; }
.arrival-create__footer p strong { color: var(--ui-text); }
.arrival-create__footer .ui-button { width: 100%; border: 0; cursor: pointer; }

/* Commandes Contrôleur */
.order-metrics { margin-bottom: 1rem; }
.order-flow { margin-bottom: 1rem; overflow: hidden; }
.order-flow > header { display: flex; padding: 1rem 1.125rem; align-items: flex-start; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--ui-border); }
.order-flow > header h2 { margin: 0; font-size: .9rem; }
.order-flow > header > p { max-width: 28rem; margin: 0; color: var(--ui-text-muted); font-size: .65rem; line-height: 1.5; text-align: right; }
.order-flow ol { display: grid; margin: 0; padding: 1rem 1.125rem; grid-template-columns: repeat(4,minmax(0,1fr)); list-style: none; }
.order-flow li { position: relative; display: flex; min-width: 0; align-items: center; gap: .65rem; }
.order-flow li:not(:last-child)::after { position: absolute; top: 50%; right: .75rem; width: calc(100% - 8.5rem); height: 1px; background: var(--ui-border); content: ""; }
.order-flow li > span { display: grid; z-index: 1; width: 2rem; height: 2rem; flex: 0 0 2rem; place-items: center; border-radius: 50%; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .68rem; font-weight: 850; }
.order-flow li div { min-width: 0; }
.order-flow li strong, .order-flow li small { display: block; }
.order-flow li strong { font-size: .67rem; }
.order-flow li small { margin-top: .16rem; color: var(--ui-text-muted); font-size: .55rem; }
.order-layout { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(21rem,.65fr); align-items: start; gap: 1rem; }
.order-register { overflow: hidden; scroll-margin-top: 5rem; }
.order-case-list { display: grid; gap: 0; }
.order-case { border-bottom: 1px solid var(--ui-border); }
.order-case:last-child { border-bottom: 0; }
.order-case > header { display: flex; min-height: 4.25rem; padding: .8rem 1rem; align-items: center; gap: .75rem; background: var(--ui-surface-muted); }
.order-case > header > div { min-width: 0; flex: 1; }
.order-case > header strong, .order-case > header small { display: block; }
.order-case > header strong { font-size: .75rem; }
.order-case > header small { margin-top: .18rem; overflow: hidden; color: var(--ui-text-muted); font-size: .6rem; text-overflow: ellipsis; white-space: nowrap; }
.order-case__icon { display: grid; width: 2rem; height: 2rem; flex: 0 0 2rem; place-items: center; border-radius: .55rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .72rem; }
.order-case__content { display: grid; padding: .9rem 1rem; grid-template-columns: minmax(0,1fr) minmax(15rem,.72fr); gap: 1rem; }
.order-case__product { padding: .8rem; border: 1px solid var(--ui-border); border-radius: .7rem; }
.order-case__product > div > span, .order-case__product > div > strong, .order-case__product > div > small { display: block; }
.order-case__product > div > span { color: var(--ui-text-muted); font-size: .58rem; }
.order-case__product > div > strong { margin-top: .2rem; font-size: .75rem; }
.order-case__product > div > small { margin-top: .18rem; color: var(--ui-text-muted); font-size: .58rem; }
.order-case__product dl { display: grid; margin: .7rem 0 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
.order-case__product dl > div { min-width: 0; padding: .6rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.order-case__product dt { color: var(--ui-text-muted); font-size: .54rem; }
.order-case__product dd { margin: .18rem 0 0; font-size: .64rem; font-weight: 800; overflow-wrap: anywhere; }
.order-case__timeline { display: grid; gap: .35rem; }
.order-case__timeline > div { position: relative; display: grid; min-height: 2.75rem; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: .6rem; }
.order-case__timeline > div:not(:last-child)::after { position: absolute; top: 1.45rem; bottom: -.45rem; left: .7rem; width: 1px; background: var(--ui-border); content: ""; }
.order-case__timeline > div > span { display: grid; z-index: 1; width: 1.45rem; height: 1.45rem; place-items: center; border: 1px solid var(--ui-border); border-radius: 50%; background: var(--ui-surface); color: var(--ui-text-muted); font-size: .55rem; font-weight: 850; }
.order-case__timeline .is-complete > span { border-color: var(--ui-success); background: var(--ui-success-soft); color: var(--ui-success); }
.order-case__timeline .is-current > span { border-color: var(--ui-warning); background: #fff3d9; color: var(--ui-warning); }
.order-case__timeline .is-stopped > span { border-color: var(--ui-danger); background: var(--ui-danger-soft); color: var(--ui-danger); }
.order-case__timeline strong, .order-case__timeline small { display: block; }
.order-case__timeline strong { font-size: .63rem; }
.order-case__timeline small { margin-top: .12rem; color: var(--ui-text-muted); font-size: .55rem; line-height: 1.35; }
.order-case__footer { display: flex; padding: .8rem 1rem; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--ui-border); }
.order-case__footer > div:first-child { min-width: 0; }
.order-case__footer > div:first-child strong { display: block; font-size: .65rem; }
.order-case__footer > div:first-child p { margin: .18rem 0 0; color: var(--ui-text-muted); font-size: .57rem; }
.order-case__actions { display: flex; flex: 0 0 auto; align-items: center; gap: .5rem; }
.order-case__actions form { margin: 0; }
.order-case__actions .ui-button { min-height: 2.65rem; border: 0; cursor: pointer; white-space: nowrap; }
.order-create { position: sticky; top: 5.25rem; overflow: hidden; scroll-margin-top: 5rem; }
.order-create > form { display: grid; }
.order-create__section { display: grid; padding: .9rem 1rem; gap: .75rem; border-bottom: 1px solid var(--ui-border); }
.order-create__section > h3 { margin: 0; font-size: .7rem; }
.order-create__grid { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; }
.order-create__preview { display: grid; margin: 0; gap: .4rem; }
.order-create__preview > div { display: flex; padding: .62rem .7rem; align-items: center; justify-content: space-between; gap: .75rem; border-radius: .55rem; background: var(--ui-surface-muted); }
.order-create__preview dt { color: var(--ui-text-muted); font-size: .57rem; }
.order-create__preview dd { margin: 0; font-size: .66rem; font-weight: 850; text-align: right; }
.order-create form > footer { display: grid; padding: 1rem; gap: .75rem; }
.order-create form > footer p { margin: 0; color: var(--ui-text-muted); font-size: .61rem; line-height: 1.5; }
.order-create form > footer .ui-button { width: 100%; border: 0; cursor: pointer; }

/* Tableau de bord Administrateur */
.role-banner { margin-bottom: 1rem; padding: 1rem 1.15rem; border: 1px solid var(--ui-border); border-left: .28rem solid var(--ui-primary); border-radius: var(--ui-radius); background: var(--ui-surface); }
.role-banner p { margin: 0; }
.role-banner__who { color: var(--ui-primary); font-size: .72rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.role-banner__does { margin-top: .35rem; color: var(--ui-text); font-size: .92rem; line-height: 1.45; }
.role-circuit { display: grid; margin: 0 0 1rem; padding: 0; list-style: none; gap: .55rem; }
.role-circuit__step { display: grid; min-height: 4.5rem; padding: .9rem 1rem; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .85rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
.role-circuit__step.is-current { border-color: color-mix(in srgb, var(--ui-primary) 45%, var(--ui-border)); border-left: .28rem solid var(--ui-primary); background: var(--ui-primary-soft); }
.role-circuit__step.is-blocked { border-color: #f0d28a; background: #fffaf0; }
.role-circuit__step.is-done { opacity: .9; }
.role-circuit__index { display: grid; width: 1.85rem; height: 1.85rem; flex: 0 0 1.85rem; place-items: center; border-radius: 50%; background: var(--ui-surface-muted); color: var(--ui-text-muted); font-size: .75rem; font-weight: 850; }
.role-circuit__step.is-current .role-circuit__index { background: var(--ui-primary); color: #fff; }
.role-circuit__step.is-done .role-circuit__index { background: var(--ui-success-soft); color: var(--ui-success); }
.role-circuit__step.is-blocked .role-circuit__index { background: #fff3d9; color: var(--ui-warning); }
.role-circuit__step div > strong, .role-circuit__step div > p { display: block; }
.role-circuit__step div > strong { font-size: .84rem; }
.role-circuit__step div > p { margin: .22rem 0 0; color: var(--ui-text-muted); font-size: .68rem; line-height: 1.4; }
.role-circuit__step .ui-button { min-height: 2.75rem; white-space: nowrap; }
.role-elsewhere { display: grid; margin-bottom: 1rem; grid-template-columns: 1fr 1fr; gap: 1rem; }
.role-elsewhere article { min-width: 0; padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
.role-elsewhere article span, .role-elsewhere article strong, .role-elsewhere article small { display: block; }
.role-elsewhere article span { color: var(--ui-text-muted); font-size: .68rem; font-weight: 700; }
.role-elsewhere article strong { margin-top: .45rem; font-size: 1.25rem; }
.role-elsewhere article small { margin-top: .3rem; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.4; }
.role-elsewhere article.is-alert { border-color: #efb5b5; background: #fffafa; }
.role-elsewhere article.is-alert strong { color: var(--ui-danger); }
.available-now { display: grid; margin-bottom: 1rem; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.available-now article { min-width: 0; padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
.available-now article span, .available-now article strong, .available-now article small { display: block; }
.available-now article span { color: var(--ui-text-muted); font-size: .68rem; font-weight: 700; }
.available-now article strong { margin-top: .55rem; font-size: 1.25rem; }
.available-now article small { margin-top: .3rem; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.4; }
.admin-overview__shortcuts { display: flex; margin-bottom: 1rem; gap: .5rem; overflow-x: auto; }
.admin-overview__shortcuts a { display: inline-flex; min-height: 2.75rem; padding: .65rem .8rem; flex: 0 0 auto; align-items: center; gap: .45rem; border: 1px solid var(--ui-border); border-radius: .6rem; background: var(--ui-surface); color: var(--ui-text) !important; font-size: .68rem; font-weight: 750; }
.admin-overview__shortcuts a:hover { border-color: #e2b6a4; background: var(--ui-primary-soft); }
.admin-overview__shortcuts a span { color: var(--ui-primary); }
.admin-overview__warning { margin-bottom: 1rem; }
.admin-overview__warning a { display: inline-flex; margin-top: .4rem; color: var(--ui-primary) !important; font-size: .68rem; font-weight: 800; }
.admin-kpi-grid { display: grid; margin-bottom: 1rem; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.admin-kpi { min-width: 0; padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.admin-kpi--primary { border-top: .2rem solid var(--ui-primary); }
.admin-kpi--success { border-color: #a8dfc6; background: var(--ui-success-soft); }
.admin-kpi--warning { border-color: #f0d28a; background: #fffaf0; }
.admin-kpi > header { display: flex; align-items: center; justify-content: space-between; gap: .7rem; }
.admin-kpi > header span { color: var(--ui-text-muted); font-size: .68rem; font-weight: 700; }
.admin-kpi > header i { display: grid; width: 1.75rem; height: 1.75rem; flex: 0 0 1.75rem; place-items: center; border-radius: .5rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .68rem; font-style: normal; font-weight: 850; }
.admin-kpi > strong { display: block; margin-top: .8rem; font-size: clamp(1.15rem,2vw,1.55rem); line-height: 1.15; overflow-wrap: anywhere; }
.admin-kpi > strong small { font-size: .58rem; letter-spacing: .02em; }
.admin-kpi > p { min-height: 2.5em; margin: .45rem 0 0; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.45; }
.admin-kpi > a, .admin-kpi__note { display: inline-flex; min-height: 2.5rem; margin-top: .55rem; align-items: center; color: var(--ui-primary) !important; font-size: .62rem; font-weight: 800; }
.admin-kpi__note { color: var(--ui-text-muted) !important; font-weight: 650; line-height: 1.35; }
.admin-overview__grid { display: grid; margin-bottom: 1rem; grid-template-columns: minmax(20rem,.85fr) minmax(0,1.15fr); align-items: stretch; gap: 1rem; }
.admin-alert-center { overflow: hidden; }
.admin-alert-list { display: grid; }
.admin-alert-list article { display: grid; min-height: 4.4rem; padding: .75rem 1rem; grid-template-columns: auto minmax(0,1fr) auto auto; align-items: center; gap: .7rem; border-bottom: 1px solid var(--ui-border); }
.admin-alert-list article:last-child { border-bottom: 0; }
.admin-alert-list article.is-danger { background: #fffafa; box-shadow: inset .2rem 0 var(--ui-danger); }
.admin-alert-list article.is-warning { background: #fffdf8; box-shadow: inset .2rem 0 var(--ui-warning); }
.admin-alert-list__icon { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: .55rem; background: var(--ui-surface-muted); color: var(--ui-primary); font-size: .7rem; }
.admin-alert-list article > div { min-width: 0; }
.admin-alert-list article > div strong, .admin-alert-list article > div p { display: block; }
.admin-alert-list article > div strong { font-size: .69rem; }
.admin-alert-list article > div p { margin: .18rem 0 0; color: var(--ui-text-muted); font-size: .59rem; line-height: 1.4; }
.admin-alert-list article > a, .admin-alert-list article > small { min-width: 4.7rem; color: var(--ui-primary) !important; font-size: .59rem; font-weight: 750; text-align: right; }
.admin-alert-list article > small { color: var(--ui-text-muted) !important; font-weight: 650; }
.admin-sales-trend { display: flex; min-width: 0; overflow: hidden; flex-direction: column; }
.admin-sales-trend > .ui-card__header nav { display: flex; padding: .2rem; gap: .15rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.admin-sales-trend > .ui-card__header nav a { display: grid; min-height: 2.3rem; padding: 0 .65rem; place-items: center; border-radius: .4rem; color: var(--ui-text-muted) !important; font-size: .61rem; font-weight: 750; }
.admin-sales-trend > .ui-card__header nav a.is-active { background: var(--ui-surface); box-shadow: 0 1px 3px rgba(15,23,42,.1); color: var(--ui-primary) !important; }
.admin-sales-chart { display: flex; min-height: 14rem; padding: 1rem 1rem .75rem; flex: 1; align-items: stretch; gap: clamp(.2rem,.75vw,.65rem); overflow-x: auto; }
.admin-sales-chart > div { display: grid; min-width: 1.1rem; flex: 1 0 1.1rem; grid-template-rows: minmax(9rem,1fr) auto; gap: .35rem; text-align: center; }
.admin-sales-chart > div > span { display: flex; min-height: 9rem; align-items: flex-end; justify-content: center; border-bottom: 1px solid var(--ui-border); background: linear-gradient(to top,rgba(238,242,247,.55) 1px,transparent 1px); background-size: 100% 25%; }
.admin-sales-chart i { display: block; width: min(1.1rem,70%); min-height: .16rem; border-radius: .3rem .3rem 0 0; background: var(--ui-primary); }
.admin-sales-chart small { color: var(--ui-text-muted); font-size: .52rem; white-space: nowrap; }
.admin-sales-trend > footer { display: flex; min-height: 3.6rem; padding: .7rem 1rem; align-items: center; gap: .7rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.admin-sales-trend > footer span { color: var(--ui-text-muted); font-size: .59rem; }
.admin-sales-trend > footer strong { font-size: .69rem; }
.admin-sales-trend > footer a { margin-left: auto; color: var(--ui-primary) !important; font-size: .62rem; font-weight: 800; }
.admin-overview__secondary { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(18rem,.75fr); align-items: start; gap: 1rem; }
.admin-center-summary { overflow: hidden; }
.admin-center-summary > .ui-card__header .ui-button { min-height: 2.5rem; }
.admin-center-summary > dl { display: grid; margin: 0; padding: 1rem; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .6rem; }
.admin-center-summary > dl > div { min-width: 0; padding: .7rem; border-radius: .6rem; background: var(--ui-surface-muted); }
.admin-center-summary > dl > div.is-total { background: var(--ui-primary-soft); }
.admin-center-summary dt, .admin-center-summary dd, .admin-center-summary dl small { display: block; }
.admin-center-summary dt { color: var(--ui-text-muted); font-size: .57rem; }
.admin-center-summary dd { margin: .28rem 0 0; font-size: .7rem; font-weight: 850; overflow-wrap: anywhere; }
.admin-center-summary dl small { margin-top: .22rem; color: var(--ui-text-muted); font-size: .53rem; line-height: 1.35; }
.admin-critical-stock { padding: 0 1rem 1rem; }
.admin-critical-stock > strong { display: block; margin-bottom: .5rem; font-size: .66rem; }
.admin-critical-stock ul { display: grid; margin: 0; padding: 0; grid-template-columns: 1fr 1fr; gap: .45rem; list-style: none; }
.admin-critical-stock li { display: grid; padding: .55rem .65rem; grid-template-columns: minmax(0,1fr) auto; gap: .2rem .5rem; border: 1px solid #f4b9b9; border-radius: .5rem; background: var(--ui-danger-soft); }
.admin-critical-stock li span { overflow: hidden; font-size: .6rem; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.admin-critical-stock li b { color: var(--ui-danger); font-size: .61rem; }
.admin-critical-stock li small { grid-column: 1 / -1; color: var(--ui-text-muted); font-size: .53rem; }
.admin-activity { overflow: hidden; }
.admin-activity > .ui-card__header > a { color: var(--ui-primary) !important; font-size: .63rem; font-weight: 800; }
.admin-activity > p { margin: 0; padding: 0 1rem 1rem; color: var(--ui-text); font-size: .84rem; line-height: 1.5; }
.admin-overview__reading-actions { display: flex; flex-wrap: wrap; gap: .55rem; padding: 0 1rem 1.05rem; }
.admin-activity ol { margin: 0; padding: 0; list-style: none; }
.admin-activity li { display: grid; min-height: 3.8rem; padding: .7rem 1rem; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .65rem; border-bottom: 1px solid var(--ui-border); }
.admin-activity li:last-child { border-bottom: 0; }
.admin-activity li > span { color: var(--ui-primary); font-size: 1rem; }
.admin-activity li strong, .admin-activity li small { display: block; }
.admin-activity li strong { font-size: .65rem; }
.admin-activity li small { margin-top: .18rem; color: var(--ui-text-muted); font-size: .56rem; line-height: 1.35; }

/* Catalogue Administrateur */
.catalogue-tabs { display: flex; margin-bottom: 1rem; padding: .3rem; gap: .25rem; overflow-x: auto; border: 1px solid var(--ui-border); border-radius: .7rem; background: var(--ui-surface); }
.catalogue-tabs a { display: inline-flex; min-height: 2.6rem; padding: .55rem .75rem; flex: 1 0 auto; align-items: center; justify-content: center; gap: .45rem; border-radius: .5rem; color: var(--ui-text-muted) !important; font-size: .66rem; font-weight: 750; }
.catalogue-tabs a:hover { background: var(--ui-primary-soft); color: var(--ui-primary) !important; }
.catalogue-tabs a span { display: grid; min-width: 1.4rem; height: 1.4rem; padding: 0 .3rem; place-items: center; border-radius: 999px; background: var(--ui-surface-muted); font-size: .56rem; }
.catalogue-metrics { margin-bottom: 1rem; }
.admin-catalogue > .ui-alert a { display: inline-flex; margin-top: .35rem; color: var(--ui-primary) !important; font-size: .65rem; font-weight: 800; }
.catalogue-section { margin-top: 1rem; scroll-margin-top: 5rem; }
.catalogue-section__header { display: flex; min-height: 4.5rem; padding: .9rem 1rem; align-items: flex-start; justify-content: space-between; gap: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius) var(--ui-radius) 0 0; background: var(--ui-surface); }
.catalogue-section__header h2 { margin: 0; font-size: .95rem; }
.catalogue-section__header p:not(.ui-eyebrow) { max-width: 40rem; margin: .28rem 0 0; color: var(--ui-text-muted); font-size: .63rem; line-height: 1.5; }
.catalogue-section__header > .ui-badge { margin-top: .15rem; }
.catalogue-category-layout { display: grid; padding: 1rem; grid-template-columns: minmax(0,1fr) minmax(19rem,.55fr); align-items: start; gap: 1rem; border: 1px solid var(--ui-border); border-top: 0; border-radius: 0 0 var(--ui-radius) var(--ui-radius); background: var(--ui-surface-muted); }
.catalogue-category-list { display: grid; gap: .55rem; }
.catalogue-category-list > article { display: grid; min-height: 4.25rem; padding: .7rem .8rem; grid-template-columns: auto minmax(0,1fr) auto auto; align-items: center; gap: .7rem; border: 1px solid var(--ui-border); border-radius: .65rem; background: var(--ui-surface); }
.catalogue-category-list > article > span:first-child { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: .5rem; background: var(--ui-primary-soft); color: var(--ui-primary); }
.catalogue-category-list article > div { min-width: 0; }
.catalogue-category-list strong, .catalogue-category-list p { display: block; }
.catalogue-category-list strong { font-size: .7rem; }
.catalogue-category-list p { margin: .17rem 0 0; overflow: hidden; color: var(--ui-text-muted); font-size: .58rem; text-overflow: ellipsis; white-space: nowrap; }
.catalogue-category-list dl { margin: 0; text-align: center; }
.catalogue-category-list dt { color: var(--ui-text-muted); font-size: .54rem; }
.catalogue-category-list dd { margin: .15rem 0 0; font-size: .72rem; font-weight: 850; }
.catalogue-creation-card { overflow: hidden; scroll-margin-top: 5rem; }
.catalogue-creation-card form { display: grid; padding: .9rem; gap: .75rem; }
.catalogue-creation-card .ui-button { width: 100%; border: 0; cursor: pointer; }
.catalogue-toolbar { display: grid; padding: .8rem 1rem; grid-template-columns: minmax(13rem,1fr) repeat(3,minmax(8rem,.5fr)) auto auto; align-items: end; gap: .6rem; border: 1px solid var(--ui-border); border-top: 0; background: var(--ui-surface-muted); }
.catalogue-toolbar .ui-button { min-height: 2.75rem; }
.catalogue-toolbar output { align-self: center; color: var(--ui-text-muted); font-size: .59rem; white-space: nowrap; }
.catalogue-product-list { border: 1px solid var(--ui-border); border-top: 0; border-radius: 0 0 var(--ui-radius) var(--ui-radius); background: var(--ui-surface); }
.catalogue-product-case { border-bottom: 1px solid var(--ui-border); }
.catalogue-product-case:last-child { border-bottom: 0; }
.catalogue-product-case > summary { display: grid; min-height: 5rem; padding: .85rem 1rem; grid-template-columns: minmax(13rem,1fr) minmax(5.5rem,.4fr) minmax(5.5rem,.4fr) minmax(10rem,.75fr) auto auto; align-items: center; gap: .75rem; cursor: pointer; list-style: none; }
.catalogue-product-case > summary::-webkit-details-marker { display: none; }
.catalogue-product-case > summary:hover { background: var(--ui-surface-muted); }
.catalogue-product-case > summary > div { min-width: 0; }
.catalogue-product-case > summary strong, .catalogue-product-case > summary small, .catalogue-product-case > summary div > span { display: block; }
.catalogue-product-case > summary strong { overflow: hidden; font-size: .68rem; text-overflow: ellipsis; white-space: nowrap; }
.catalogue-product-case > summary small, .catalogue-product-case > summary div > span { margin-top: .16rem; overflow: hidden; color: var(--ui-text-muted); font-size: .56rem; text-overflow: ellipsis; white-space: nowrap; }
.catalogue-product-case > summary > i { color: var(--ui-text-muted); font-style: normal; transition: transform .15s ease; }
.catalogue-product-case[open] > summary { border-bottom: 1px solid var(--ui-border); background: #fff8f4; }
.catalogue-product-case[open] > summary > i { transform: rotate(180deg); }
.catalogue-product-case__icon { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: .55rem; background: var(--ui-primary-soft); color: var(--ui-primary); }
.catalogue-product-case__body { padding: 1rem; background: var(--ui-surface-muted); }
.catalogue-product-case__body > nav { display: flex; margin-bottom: .75rem; gap: .35rem; overflow-x: auto; }
.catalogue-product-case__body > nav a { display: inline-flex; min-height: 2.5rem; padding: .55rem .7rem; flex: 0 0 auto; align-items: center; border: 1px solid var(--ui-border); border-radius: .5rem; background: var(--ui-surface); color: var(--ui-primary) !important; font-size: .6rem; font-weight: 750; }
.catalogue-product-overview, .catalogue-product-stock, .catalogue-product-lots, .catalogue-product-history { scroll-margin-top: 5rem; border: 1px solid var(--ui-border); background: var(--ui-surface); }
.catalogue-sale-tariff { scroll-margin-top: 5rem; padding: .8rem; border: 1px solid var(--ui-border); border-top: 0; background: var(--ui-surface); }
.catalogue-sale-tariff > header { display: flex; align-items: flex-start; justify-content: space-between; gap: .75rem; }
.catalogue-sale-tariff h3 { margin: 0; font-size: .78rem; }
.catalogue-sale-tariff > header p { margin: .2rem 0 0; color: var(--ui-text-muted); font-size: .58rem; }
.catalogue-sale-tariff dl { display: grid; margin: .7rem 0 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; }
.catalogue-sale-tariff dl > div { padding: .6rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.catalogue-sale-tariff dt { color: var(--ui-text-muted); font-size: .54rem; }
.catalogue-sale-tariff dd { margin: .17rem 0 0; font-size: .64rem; font-weight: 800; }
.catalogue-sale-tariff form { margin: .75rem 0 0; display: grid; gap: .7rem; }
.catalogue-sale-tariff form > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
.catalogue-sale-tariff .catalogue-task__wide { grid-column: 1 / -1; }
.catalogue-sale-tariff .ui-alert { margin: .7rem 0 0; }
.catalogue-sale-tariff__grids { display: grid; margin-top: .75rem; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; }
.catalogue-sale-tariff__buyer { padding: .7rem; border: 1px solid var(--ui-border); border-radius: .55rem; background: var(--ui-surface-muted); }
.catalogue-sale-tariff form .catalogue-sale-tariff__grids { margin-top: 0; }
.catalogue-sale-tariff form .catalogue-sale-tariff__buyer { display: grid; gap: .55rem; background: var(--ui-surface); }
.catalogue-sale-tariff__buyer h4,
.catalogue-sale-tariff__buyer legend { margin: 0; font-size: .68rem; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.catalogue-sale-tariff__buyer p { margin: 0; color: var(--ui-text-muted); font-size: .58rem; line-height: 1.45; }
.catalogue-sale-tariff__buyer dl { margin: .55rem 0 0; grid-template-columns: 1fr; }
.catalogue-sale-tariff__buyer .ui-alert { margin: .55rem 0 0; }
.catalogue-product-overview { padding: .8rem; border-radius: .7rem .7rem 0 0; }
.catalogue-product-overview > header { display: flex; align-items: flex-start; justify-content: space-between; gap: .75rem; }
.catalogue-product-overview h3, .catalogue-product-stock h3, .catalogue-product-lots h3, .catalogue-product-history h3 { margin: 0; font-size: .78rem; }
.catalogue-product-overview dl { display: grid; margin: .7rem 0 0; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .5rem; }
.catalogue-product-overview dl > div, .catalogue-product-stock dl > div { padding: .6rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.catalogue-product-overview dt, .catalogue-product-stock dt { color: var(--ui-text-muted); font-size: .54rem; }
.catalogue-product-overview dd, .catalogue-product-stock dd { margin: .17rem 0 0; font-size: .64rem; font-weight: 800; }
.catalogue-product-stock { padding: .8rem; border-top: 0; }
.catalogue-product-stock dl { display: grid; margin: .6rem 0 0; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .5rem; }
.catalogue-product-stock dl > div.is-alert { background: var(--ui-danger-soft); }
.catalogue-product-stock dl > div.is-alert dd { color: var(--ui-danger); }
.stock-correction { margin-top: .75rem; border-top: 1px solid var(--ui-border); }
.stock-correction > summary { min-height: 44px; padding: .75rem 0 0; color: var(--ui-danger); cursor: pointer; font-size: .62rem; font-weight: 800; }
.stock-correction form { display: grid; padding-top: .75rem; gap: .75rem; }
.stock-correction form > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.stock-correction form > button { justify-self: start; }
.catalogue-product-lots { border-top: 0; }
.catalogue-product-lots > header { padding: .8rem; border-bottom: 1px solid var(--ui-border); }
.catalogue-product-lots > header p { margin: .2rem 0 0; color: var(--ui-text-muted); font-size: .58rem; }
.catalogue-lot-table { overflow-x: auto; }
.catalogue-lot-table table { width: 100%; border-collapse: collapse; }
.catalogue-lot-table th, .catalogue-lot-table td { padding: .65rem .7rem; border-bottom: 1px solid var(--ui-border); font-size: .58rem; text-align: left; vertical-align: top; }
.catalogue-lot-table th { color: var(--ui-text-muted); background: var(--ui-surface-muted); font-size: .53rem; }
.catalogue-lot-table td small { display: block; margin-top: .15rem; color: var(--ui-text-muted); font-size: .51rem; }
.catalogue-product-history { border-top: 0; border-radius: 0 0 .7rem .7rem; }
.catalogue-product-history > header { display: flex; padding: .75rem .8rem; align-items: center; justify-content: space-between; gap: .7rem; border-bottom: 1px solid var(--ui-border); }
.catalogue-product-history > header small { color: var(--ui-text-muted); font-size: .55rem; }
.catalogue-product-history ol { margin: 0; padding: 0; list-style: none; }
.catalogue-product-history li { display: grid; padding: .65rem .8rem; grid-template-columns: minmax(7rem,.6fr) minmax(0,1fr) auto auto; align-items: center; gap: .6rem; border-bottom: 1px solid var(--ui-border); }
.catalogue-product-history li:last-child { border-bottom: 0; }
.catalogue-product-history time { color: var(--ui-text-muted); font-size: .55rem; }
.catalogue-product-history li div { min-width: 0; }
.catalogue-product-history li strong, .catalogue-product-history li small { display: block; }
.catalogue-product-history li strong { font-size: .61rem; }
.catalogue-product-history li small { margin-top: .14rem; overflow: hidden; color: var(--ui-text-muted); font-size: .53rem; text-overflow: ellipsis; white-space: nowrap; }
.catalogue-product-history li > b { font-size: .58rem; }
.is-negative { color: var(--ui-danger); }
.is-positive { color: var(--ui-success); }
.catalogue-management { overflow: hidden; }
.catalogue-cost-rule { margin: 1rem 1rem 0; }
.bottle-custody-workspace { display: grid; gap: 1rem; }
.bottle-custody-layout { display: grid; grid-template-columns: minmax(18rem,.8fr) minmax(0,1.2fr); align-items: start; gap: 1rem; }
.bottle-custody-form { display: grid; padding: 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.bottle-custody-form__wide, .bottle-custody-form > button { grid-column: 1/-1; }
.bottle-custody-form > button { justify-self: start; }
.bottle-custody-list { display: grid; padding: 1rem; gap: .75rem; }
.bottle-custody-list > article { padding: .85rem; border: 1px solid var(--ui-border); border-left: 4px solid var(--ui-warning); border-radius: .7rem; background: var(--ui-surface); }
.bottle-custody-list > article.is-closed { border-left-color: var(--ui-success); }
.bottle-custody-list article > header { display: flex; align-items: flex-start; justify-content: space-between; gap: .75rem; }
.bottle-custody-list header strong, .bottle-custody-list header small { display: block; }
.bottle-custody-list header small, .bottle-custody-list article > small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .55rem; }
.bottle-custody-list article > p { margin: .55rem 0 0; font-size: .61rem; }
.bottle-custody-list dl { display: grid; margin: .65rem 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
.bottle-custody-list dl div { padding: .5rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.bottle-custody-list dt { color: var(--ui-text-muted); font-size: .5rem; }
.bottle-custody-list dd { margin: .15rem 0 0; font-size: .57rem; font-weight: 750; }
.bottle-custody-list form { margin-top: .7rem; }
@media (max-width: 60rem) { .bottle-custody-layout { grid-template-columns: 1fr; } }
@media (max-width: 42rem) { .bottle-custody-form, .bottle-custody-list dl { grid-template-columns: 1fr; } .bottle-custody-list article > header { flex-direction: column; } }
.catalogue-management__grid { display: grid; padding: 1rem; grid-template-columns: .8fr 1.2fr; align-items: start; gap: 1rem; border: 1px solid var(--ui-border); border-top: 0; border-radius: 0 0 var(--ui-radius) var(--ui-radius); background: var(--ui-surface-muted); }
.catalogue-management__grid--separated { grid-template-columns: repeat(2,minmax(0,1fr)); }
.catalogue-management__grid--separated .catalogue-task--article:first-child { grid-column: 1 / -1; }
.catalogue-task--gas { border-top: .2rem solid var(--ui-primary); }
.catalogue-task--article { border-top: .2rem solid var(--ui-success); }
.catalogue-task { overflow: hidden; }
.catalogue-task > summary { display: flex; min-height: 4rem; padding: .8rem 1rem; align-items: center; justify-content: space-between; gap: .7rem; cursor: pointer; list-style: none; }
.catalogue-task > summary::-webkit-details-marker { display: none; }
.catalogue-task > summary strong, .catalogue-task > summary small { display: block; }
.catalogue-task > summary strong { font-size: .72rem; }
.catalogue-task > summary small { margin-top: .18rem; color: var(--ui-text-muted); font-size: .57rem; }
.catalogue-task > summary i { color: var(--ui-primary); font-size: 1rem; font-style: normal; }
.catalogue-task[open] > summary { border-bottom: 1px solid var(--ui-border); background: var(--ui-primary-soft); }
.catalogue-task[open] > summary i { transform: rotate(45deg); }
.catalogue-task form { display: grid; padding: .9rem; grid-template-columns: 1fr 1fr; gap: .75rem; }
.catalogue-task form > footer { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; gap: .75rem; }
.catalogue-task form > footer p { margin: 0; color: var(--ui-text-muted); font-size: .58rem; }
.catalogue-task .ui-button { border: 0; cursor: pointer; }
.catalogue-task__wide { grid-column: 1 / -1; }
.catalogue-global-grid { display: grid; padding: 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .7rem; border: 1px solid var(--ui-border); border-top: 0; border-radius: 0 0 var(--ui-radius) var(--ui-radius); background: var(--ui-surface-muted); }
.catalogue-global-grid article { padding: .75rem; border: 1px solid var(--ui-border); border-radius: .65rem; background: var(--ui-surface); }
.catalogue-global-grid article > header { display: flex; align-items: flex-start; justify-content: space-between; gap: .6rem; }
.catalogue-global-grid header strong, .catalogue-global-grid header small { display: block; }
.catalogue-global-grid header strong { font-size: .66rem; }
.catalogue-global-grid header small { margin-top: .16rem; color: var(--ui-text-muted); font-size: .54rem; }
.catalogue-global-grid dl { display: grid; margin: .65rem 0; grid-template-columns: 1fr 1fr; gap: .4rem; }
.catalogue-global-grid dl > div:last-child { grid-column: 1 / -1; }
.catalogue-global-grid dl > div { padding: .5rem; border-radius: .45rem; background: var(--ui-surface-muted); }
.catalogue-global-grid dt { color: var(--ui-text-muted); font-size: .51rem; }
.catalogue-global-grid dd { margin: .14rem 0 0; font-size: .59rem; font-weight: 800; }
.catalogue-global-grid article > a { color: var(--ui-primary) !important; font-size: .57rem; font-weight: 750; }
.catalogue-movement-list { border: 1px solid var(--ui-border); border-top: 0; border-radius: 0 0 var(--ui-radius) var(--ui-radius); background: var(--ui-surface); }
.catalogue-movement-list article { display: grid; min-height: 3.8rem; padding: .7rem 1rem; grid-template-columns: minmax(8rem,.6fr) minmax(0,1fr) auto auto; align-items: center; gap: .7rem; border-bottom: 1px solid var(--ui-border); }
.catalogue-movement-list article:last-child { border-bottom: 0; }
.catalogue-movement-list time { color: var(--ui-text-muted); font-size: .57rem; }
.catalogue-movement-list article > div { min-width: 0; }
.catalogue-movement-list strong, .catalogue-movement-list small { display: block; }
.catalogue-movement-list strong { font-size: .65rem; }
.catalogue-movement-list small { margin-top: .16rem; overflow: hidden; color: var(--ui-text-muted); font-size: .54rem; text-overflow: ellipsis; white-space: nowrap; }
.catalogue-movement-list article > span { font-size: .58rem; }
.catalogue-alert-grid { display: grid; padding: 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .6rem; border: 1px solid var(--ui-border); border-top: 0; border-radius: 0 0 var(--ui-radius) var(--ui-radius); background: var(--ui-surface-muted); }
.catalogue-alert-grid > article { display: grid; padding: .75rem; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .65rem; border: 1px solid #f4b9b9; border-radius: .65rem; background: var(--ui-danger-soft); }
.catalogue-alert-grid > article > span { display: grid; width: 1.8rem; height: 1.8rem; place-items: center; border-radius: 50%; background: var(--ui-danger); color: #fff; font-size: .65rem; font-weight: 850; }
.catalogue-alert-grid strong { font-size: .65rem; }
.catalogue-alert-grid p { margin: .16rem 0 0; color: var(--ui-text-muted); font-size: .55rem; }
.catalogue-alert-grid a { color: var(--ui-danger) !important; font-size: .57rem; font-weight: 800; }
.legacy-value-list { display: grid; padding: 1rem; gap: .75rem; border: 1px solid var(--ui-border); border-top: 0; border-radius: 0 0 var(--ui-radius) var(--ui-radius); background: var(--ui-surface-muted); }
.legacy-value-list form { display: grid; padding: .85rem; grid-template-columns: minmax(10rem,.8fr) minmax(0,2fr) auto; align-items: center; gap: .75rem; border: 1px solid #f0d28a; border-radius: .7rem; background: var(--ui-surface); }
.legacy-value-list form > header strong, .legacy-value-list form > header small { display: block; }
.legacy-value-list form > header strong { font-size: .68rem; }
.legacy-value-list form > header small { margin-top: .17rem; color: var(--ui-text-muted); font-size: .55rem; }
.legacy-value-list form > header .ui-badge { margin-top: .4rem; }
.legacy-value-list form > div { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .55rem; }
.legacy-value-list form > .ui-button { border: 0; cursor: pointer; }

/* Capital Administrateur */
.capital-tabs { display: flex; margin-bottom: 1rem; padding: .3rem; gap: .25rem; overflow-x: auto; border: 1px solid var(--ui-border); border-radius: .7rem; background: var(--ui-surface); }
.capital-tabs a { display: inline-flex; min-height: 2.6rem; padding: .55rem .75rem; flex: 1 0 auto; align-items: center; justify-content: center; border-radius: .5rem; color: var(--ui-text-muted) !important; font-size: .64rem; font-weight: 750; }
.capital-tabs a:hover { background: var(--ui-primary-soft); color: var(--ui-primary) !important; }
.capital-warning { margin-bottom: 1rem; }
.capital-warning a { display: inline-flex; margin-top: .35rem; color: var(--ui-primary) !important; font-size: .65rem; font-weight: 800; }
.capital-position, .capital-flow, .capital-profit { margin-bottom: 1rem; overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: var(--ui-shadow); scroll-margin-top: 5rem; }
.capital-position > header, .capital-flow > header, .capital-profit > header { display: flex; padding: .9rem 1rem; align-items: flex-start; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--ui-border); }
.capital-position > header h2, .capital-flow > header h2, .capital-profit > header h2 { margin: 0; font-size: .9rem; }
.capital-position > header > div > p:not(.ui-eyebrow) { max-width: 38rem; margin: .25rem 0 0; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.5; }
.capital-flow > header > p, .capital-profit > header > div > p:not(.ui-eyebrow) { max-width: 32rem; margin: .25rem 0 0; color: var(--ui-text-muted); font-size: .62rem; line-height: 1.5; }
.capital-flow > header > p { margin: 0; text-align: right; }
.capital-position__grid { display: grid; padding: 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; background: var(--ui-surface-muted); }
.capital-position__grid--four { grid-template-columns: repeat(4,minmax(0,1fr)); }
.capital-position__grid article { min-width: 0; padding: .9rem; border: 1px solid var(--ui-border); border-radius: .7rem; background: var(--ui-surface); }
.capital-position__grid article.is-primary { border-top: .2rem solid var(--ui-primary); }
.capital-position__grid article.is-success { border-color: #a8dfc6; background: var(--ui-success-soft); }
.capital-position__grid article.is-warning { border-color: #f0d28a; background: #fffaf0; }
.capital-position__grid span, .capital-position__grid strong, .capital-position__grid b { display: block; }
.capital-position__grid span { color: var(--ui-text-muted); font-size: .65rem; font-weight: 700; }
.capital-position__grid strong { margin-top: .65rem; font-size: clamp(1.15rem,2.2vw,1.55rem); overflow-wrap: anywhere; }
.capital-position__grid strong small { font-size: .58rem; }
.capital-position__grid p { min-height: 3.9em; margin: .45rem 0 0; color: var(--ui-text-muted); font-size: .6rem; line-height: 1.5; }
.capital-position__grid b { margin-top: .5rem; font-size: .58rem; }
.capital-owner-summary { display: grid; padding: 0 1rem 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; background: var(--ui-surface-muted); }
.capital-owner-summary > div { min-width: 0; padding: .8rem; border: 1px solid var(--ui-border); border-radius: .65rem; background: var(--ui-surface); }
.capital-owner-summary > div.is-balanced { border-color: #a8dfc6; background: var(--ui-success-soft); }
.capital-owner-summary > div.is-attention { border-color: #f0d28a; background: #fffaf0; }
.capital-owner-summary span, .capital-owner-summary strong, .capital-owner-summary small { display: block; }
.capital-owner-summary span { color: var(--ui-text-muted); font-size: .58rem; font-weight: 750; }
.capital-owner-summary strong { margin-top: .35rem; font-size: .82rem; overflow-wrap: anywhere; }
.capital-owner-summary small { margin-top: .25rem; color: var(--ui-text-muted); font-size: .52rem; line-height: 1.4; }
.capital-flow__steps { display: grid; padding: 1rem; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: .55rem; background: var(--ui-surface-muted); }
.capital-flow__steps article { display: flex; min-height: 4rem; padding: .7rem; align-items: center; gap: .6rem; border: 1px solid var(--ui-border); border-radius: .65rem; background: var(--ui-surface); }
.capital-flow__steps article > span { display: grid; width: 1.7rem; height: 1.7rem; flex: 0 0 1.7rem; place-items: center; border-radius: 50%; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .59rem; font-weight: 850; }
.capital-flow__steps strong, .capital-flow__steps small { display: block; }
.capital-flow__steps strong { font-size: .63rem; }
.capital-flow__steps small { margin-top: .16rem; color: var(--ui-text-muted); font-size: .53rem; line-height: 1.35; }
.capital-flow__steps > i { color: var(--ui-text-muted); font-style: normal; }
.capital-equations { display: grid; padding: 0 1rem 1rem; grid-template-columns: 1fr 1fr; gap: .75rem; background: var(--ui-surface-muted); }
.capital-equations > article { overflow: hidden; border: 1px solid var(--ui-border); border-radius: .7rem; background: var(--ui-surface); }
.capital-equations article > header { display: flex; padding: .7rem .8rem; align-items: center; gap: .6rem; border-bottom: 1px solid var(--ui-border); }
.capital-equations article > header > span { display: grid; width: 1.65rem; height: 1.65rem; place-items: center; border-radius: .45rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .58rem; font-weight: 850; }
.capital-equations header strong, .capital-equations header small { display: block; }
.capital-equations header strong { font-size: .65rem; }
.capital-equations header small { margin-top: .14rem; color: var(--ui-text-muted); font-size: .53rem; }
.capital-equations article > div { display: flex; padding: .8rem; align-items: center; gap: .38rem; flex-wrap: wrap; }
.capital-equations article > div span { padding: .38rem .45rem; border-radius: .4rem; background: var(--ui-surface-muted); color: var(--ui-text-muted); font-size: .53rem; }
.capital-equations article > div i { color: var(--ui-primary); font-size: .58rem; font-style: normal; font-weight: 850; }
.capital-equations article > div strong { margin-left: auto; color: var(--ui-primary); font-size: .68rem; }
.capital-composition { margin-bottom: 1rem; overflow: hidden; }
.capital-composition > dl { display: grid; margin: 0; padding: 1rem; grid-template-columns: repeat(4,minmax(0,1fr)); align-items: stretch; gap: .5rem; }
.capital-composition > dl > div { min-width: 0; padding: .7rem; border-radius: .6rem; background: var(--ui-surface-muted); }
.capital-composition > dl > div.is-incomplete { background: #fff3d9; }
.capital-composition > dl > div.is-liability { background: var(--ui-danger-soft); }
.capital-composition > dl > div.is-total { grid-column: span 2; background: var(--ui-primary-soft); }
.capital-composition dt, .capital-composition dd, .capital-composition dl small { display: block; }
.capital-composition dt { color: var(--ui-text-muted); font-size: .55rem; }
.capital-composition dd { margin: .25rem 0 0; font-size: .68rem; font-weight: 850; overflow-wrap: anywhere; }
.capital-composition dl small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .51rem; line-height: 1.35; }
.capital-composition dl > i { display: none; }
.capital-profit > div { display: grid; padding: 1rem; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); align-items: stretch; gap: .55rem; background: var(--ui-surface-muted); }
.capital-profit > div article { min-width: 0; padding: .75rem; border-radius: .6rem; background: var(--ui-surface); }
.capital-profit > div article.is-result { background: var(--ui-success-soft); }
.capital-profit > div article.is-incomplete { border: 1px solid #f0d28a; background: #fffaf0; }
.capital-profit > div article span, .capital-profit > div article strong, .capital-profit > div article p { display: block; }
.capital-profit > div article span { color: var(--ui-text-muted); font-size: .56rem; }
.capital-profit > div article strong { margin-top: .35rem; font-size: .72rem; overflow-wrap: anywhere; }
.capital-profit > div article strong small { font-size: .5rem; }
.capital-profit > div article p { margin: .25rem 0 0; color: var(--ui-text-muted); font-size: .51rem; }
.capital-profit > div > i { align-self: center; color: var(--ui-primary); font-size: .7rem; font-style: normal; font-weight: 850; }
.capital-profit-breakdown { display: grid; padding: 0 1rem 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; background: var(--ui-surface-muted); }
.capital-profit-breakdown article { padding: .8rem; border: 1px solid var(--ui-border); border-radius: .65rem; background: var(--ui-surface); }
.capital-profit-breakdown header strong, .capital-profit-breakdown header small { display: block; }
.capital-profit-breakdown header strong { font-size: .68rem; }
.capital-profit-breakdown header small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .52rem; }
.capital-profit-breakdown dl { display: grid; margin: .65rem 0 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .4rem; }
.capital-profit-breakdown dl div { min-width: 0; }
.capital-profit-breakdown dt { color: var(--ui-text-muted); font-size: .5rem; }
.capital-profit-breakdown dd { margin: .15rem 0 0; font-size: .58rem; font-weight: 800; overflow-wrap: anywhere; }
.capital-management { display: grid; margin-bottom: 1rem; grid-template-columns: minmax(0,1.15fr) minmax(18rem,.65fr); align-items: start; gap: 1rem; }
#pending-owner-cash { grid-column: 1 / -1; }
.owner-cash-request { margin-bottom: 1rem; border-top: .2rem solid var(--ui-warning); }
.capital-adjustment > .ui-alert { margin: 1rem; }
.capital-adjustment__cash { grid-column: 1 / -1; margin: 0; color: var(--ui-text-muted); font-size: .68rem; line-height: 1.45; }
.capital-adjustment { overflow: hidden; scroll-margin-top: 5rem; }
.capital-adjustment > summary { display: flex; min-height: 4.25rem; padding: .8rem 1rem; align-items: center; justify-content: space-between; gap: .7rem; cursor: pointer; list-style: none; }
.capital-adjustment > summary::-webkit-details-marker { display: none; }
.capital-adjustment > summary strong, .capital-adjustment > summary small { display: block; }
.capital-adjustment > summary strong { font-size: .72rem; }
.capital-adjustment > summary small { margin-top: .17rem; color: var(--ui-text-muted); font-size: .57rem; }
.capital-adjustment > summary i { color: var(--ui-primary); font-size: 1rem; font-style: normal; }
.capital-adjustment[open] > summary { border-bottom: 1px solid var(--ui-border); background: var(--ui-primary-soft); }
.capital-adjustment[open] > summary i { transform: rotate(45deg); }
.capital-adjustment form { display: grid; padding: 1rem; grid-template-columns: 1fr 1fr; gap: .75rem; }
.capital-adjustment__reason { grid-column: 1 / -1; }
.capital-adjustment__impact { display: flex; min-height: 3.5rem; padding: .65rem; align-items: center; gap: .6rem; border-radius: .6rem; background: var(--ui-success-soft); }
.capital-adjustment__impact.is-withdrawal { background: var(--ui-danger-soft); }
.capital-adjustment__impact > span { display: grid; width: 1.8rem; height: 1.8rem; flex: 0 0 1.8rem; place-items: center; border-radius: 50%; background: var(--ui-success); color: #fff; font-size: .8rem; font-weight: 850; }
.capital-adjustment__impact.is-withdrawal > span { background: var(--ui-danger); }
.capital-adjustment__impact strong, .capital-adjustment__impact small { display: block; }
.capital-adjustment__impact strong { font-size: .61rem; }
.capital-adjustment__impact small { margin-top: .13rem; color: var(--ui-text-muted); font-size: .52rem; }
.capital-adjustment form > .ui-button { border: 0; cursor: pointer; }
.capital-guidance { display: flex; padding: 1rem; gap: .7rem; border: 1px solid #e2b6a4; border-radius: var(--ui-radius); background: var(--ui-primary-soft); }
.capital-guidance > span { display: grid; width: 1.8rem; height: 1.8rem; flex: 0 0 1.8rem; place-items: center; border-radius: 50%; background: var(--ui-primary); color: #fff; font-size: .65rem; font-weight: 850; }
.capital-guidance h2 { margin: 0; font-size: .72rem; }
.capital-guidance p { margin: .4rem 0 0; color: var(--ui-text-muted); font-size: .58rem; line-height: 1.5; }
.capital-history { overflow: hidden; scroll-margin-top: 5rem; }
.capital-history__table { overflow-x: auto; }
.capital-history__table table { width: 100%; border-collapse: collapse; }
.capital-history__table th, .capital-history__table td { padding: .7rem .8rem; border-bottom: 1px solid var(--ui-border); font-size: .59rem; text-align: left; vertical-align: middle; }
.capital-history__table th { color: var(--ui-text-muted); background: var(--ui-surface-muted); font-size: .54rem; }
.capital-history__table tr:last-child td { border-bottom: 0; }
.capital-history__table td > strong, .capital-history__table td > small { display: block; }
.capital-history__table td > small { margin-top: .15rem; color: var(--ui-text-muted); font-size: .52rem; }

/* Rapports Administrateur */
.report-hub-tabs { display: grid; margin-bottom: 1rem; padding: .35rem; grid-template-columns: repeat(6,minmax(0,1fr)); gap: .3rem; border: 1px solid var(--ui-border); border-radius: .75rem; background: var(--ui-surface); }
.report-hub-tabs a { display: flex; min-height: 3.1rem; padding: .55rem; align-items: center; justify-content: center; gap: .45rem; border-radius: .55rem; color: var(--ui-text-muted) !important; font-size: .63rem; font-weight: 750; text-align: center; }
.report-hub-tabs a span { color: var(--ui-primary); font-size: .72rem; }
.report-hub-tabs a:hover { background: var(--ui-surface-muted); }
.report-hub-tabs a.is-active { background: var(--ui-primary); color: #fff !important; box-shadow: 0 .2rem .5rem rgba(154,53,22,.22); }
.report-hub-tabs a.is-active span { color: #fff; }
.report-module-header { display: flex; min-height: 5rem; margin-bottom: 1rem; padding: 1rem; align-items: flex-start; justify-content: space-between; gap: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.report-module-header h2 { margin: 0; font-size: 1rem; }
.report-module-header p:not(.ui-eyebrow) { max-width: 42rem; margin: .28rem 0 0; color: var(--ui-text-muted); font-size: .64rem; line-height: 1.5; }
.report-filter-card { margin-bottom: 1rem; overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.report-filter-card > header { display: flex; padding: .8rem 1rem; align-items: center; justify-content: space-between; gap: .75rem; border-bottom: 1px solid var(--ui-border); }
.report-filter-card h3 { margin: 0; font-size: .8rem; }
.report-filter-card form { display: grid; padding: .9rem 1rem; grid-template-columns: minmax(9rem,.6fr) minmax(9rem,.6fr) minmax(13rem,1fr) auto auto; align-items: end; gap: .7rem; }
.report-filter-card form .ui-button { min-height: 2.75rem; }
.report-filter-card > footer { padding: .65rem 1rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface-muted); color: var(--ui-text-muted); font-size: .58rem; }
.report-metrics { margin-bottom: 1rem; }
.report-analysis-grid { display: grid; margin-bottom: 1rem; grid-template-columns: minmax(18rem,.75fr) minmax(0,1.25fr); gap: 1rem; }
.report-ranking, .report-series, .report-register, .report-dual-register > section { overflow: hidden; }
.report-ranking > div { display: grid; padding: .9rem; gap: .65rem; }
.report-ranking article > header { display: flex; align-items: center; justify-content: space-between; gap: .7rem; }
.report-ranking article strong { font-size: .62rem; }
.report-ranking article span { color: var(--ui-text-muted); font-size: .55rem; }
.report-ranking article > i { display: block; height: .4rem; margin-top: .35rem; overflow: hidden; border-radius: 999px; background: var(--ui-surface-muted); }
.report-ranking article > i em { display: block; height: 100%; border-radius: inherit; background: var(--ui-primary); }
.report-series > div { display: flex; min-height: 15rem; padding: 1rem 1rem 1.9rem; align-items: stretch; gap: clamp(.125rem,.35vw,.4rem); overflow: hidden; }
.report-series article { position: relative; display: grid; min-width: 0; flex: 1 1 0; grid-template-rows: minmax(10rem,1fr); text-align: center; }
.report-series article > span { display: flex; min-height: 10rem; align-items: flex-end; justify-content: center; border-bottom: 1px solid var(--ui-border); }
.report-series article i { display: block; width: min(1.1rem,75%); min-height: .15rem; border-radius: .3rem .3rem 0 0; background: var(--ui-primary); }
.report-series article small { position: absolute; top: calc(100% + .45rem); left: 50%; width: max-content; color: var(--ui-text-muted); font-size: clamp(.5rem,.55vw,.62rem); line-height: 1; transform: translateX(-50%); visibility: hidden; white-space: nowrap; }
.report-series article small.is-reference { visibility: visible; }
.report-register { margin-bottom: 1rem; }
.report-register > div { overflow-x: auto; }
.report-register table { width: 100%; border-collapse: collapse; }
.report-register th, .report-register td { padding: .7rem .8rem; border-bottom: 1px solid var(--ui-border); font-size: .58rem; text-align: left; vertical-align: middle; }
.report-register th { color: var(--ui-text-muted); background: var(--ui-surface-muted); font-size: .53rem; }
.report-register td strong, .report-register td small { display: block; }
.report-register td small { margin-top: .14rem; color: var(--ui-text-muted); font-size: .51rem; }
.report-register > footer { display: flex; min-height: 3.5rem; padding: .7rem 1rem; align-items: center; justify-content: space-between; gap: .75rem; background: var(--ui-surface-muted); color: var(--ui-text-muted); font-size: .57rem; }
.report-register > footer a { color: var(--ui-primary) !important; font-weight: 800; }
.report-current-note { display: flex; min-height: 5rem; padding: 1rem; align-items: center; gap: .75rem; border: 1px solid #e2b6a4; border-radius: var(--ui-radius); background: var(--ui-primary-soft); }
.report-current-note > span { display: grid; width: 2rem; height: 2rem; flex: 0 0 2rem; place-items: center; border-radius: 50%; background: var(--ui-primary); color: #fff; font-size: .68rem; font-weight: 850; }
.report-current-note > div { min-width: 0; flex: 1; }
.report-current-note strong, .report-current-note p { display: block; }
.report-current-note strong { font-size: .68rem; }
.report-current-note p { margin: .2rem 0 0; color: var(--ui-text-muted); font-size: .59rem; line-height: 1.45; }
.report-current-note a { color: var(--ui-primary) !important; font-size: .61rem; font-weight: 800; }
.report-mobile-grid { display: grid; margin-bottom: 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.report-mobile-grid > article { overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.report-mobile-grid article > header { display: flex; padding: .8rem .9rem; align-items: center; gap: .6rem; border-bottom: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.report-mobile-grid header > span:first-child { display: grid; width: 1.8rem; height: 1.8rem; place-items: center; border-radius: .5rem; background: var(--ui-primary-soft); color: var(--ui-primary); }
.report-mobile-grid header > div { min-width: 0; flex: 1; }
.report-mobile-grid header strong, .report-mobile-grid header small { display: block; }
.report-mobile-grid header strong { font-size: .68rem; }
.report-mobile-grid header small { margin-top: .14rem; color: var(--ui-text-muted); font-size: .53rem; }
.report-mobile-grid dl { display: grid; margin: 0; padding: .9rem; grid-template-columns: 1fr 1fr; gap: .55rem; }
.report-mobile-grid dl > div { padding: .6rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.report-mobile-grid dl > div.is-total { background: var(--ui-primary-soft); }
.report-mobile-grid dt { color: var(--ui-text-muted); font-size: .53rem; }
.report-mobile-grid dd { margin: .18rem 0 0; font-size: .61rem; font-weight: 800; overflow-wrap: anywhere; }
.report-dual-register { display: grid; margin-bottom: 1rem; grid-template-columns: 1fr 1fr; align-items: start; gap: 1rem; }
.report-dual-register ul { margin: 0; padding: 0; list-style: none; }
.report-dual-register li { display: grid; min-height: 4rem; padding: .7rem .9rem; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: .65rem; border-bottom: 1px solid var(--ui-border); }
.report-dual-register li:last-child { border-bottom: 0; }
.report-dual-register li > div { min-width: 0; }
.report-dual-register li strong, .report-dual-register li small { display: block; }
.report-dual-register li strong { font-size: .64rem; }
.report-dual-register li small { margin-top: .15rem; overflow: hidden; color: var(--ui-text-muted); font-size: .52rem; text-overflow: ellipsis; white-space: nowrap; }
.report-dual-register li > b { font-size: .58rem; white-space: nowrap; }

/* Utilisateurs Administrateur */
.admin-users__tabs { display: flex; margin-bottom: 1rem; padding: .3rem; gap: .3rem; border: 1px solid var(--ui-border); border-radius: .7rem; background: var(--ui-surface); }
.admin-users__tabs a { display: flex; min-height: 2.7rem; padding: .55rem .75rem; align-items: center; gap: .55rem; border-radius: .5rem; color: var(--ui-text-muted) !important; font-size: .62rem; font-weight: 800; }
.admin-users__tabs a:hover { background: var(--ui-surface-muted); color: var(--ui-primary) !important; }
.admin-users__tabs span { display: grid; min-width: 1.35rem; height: 1.35rem; padding: 0 .3rem; place-items: center; border-radius: 999px; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .55rem; }
.admin-users__metrics { margin-bottom: 1rem; }
.admin-users__metrics .ui-metric-card--danger { border-color: #fecaca; background: var(--ui-danger-soft); }
.admin-users__metrics .ui-metric-card--danger strong { color: var(--ui-danger); }
.admin-users__security { display: flex; margin-bottom: 1rem; padding: .85rem 1rem; align-items: center; gap: .7rem; border: 1px solid #e2b6a4; border-radius: var(--ui-radius); background: var(--ui-primary-soft); }
.admin-users__security > span { display: grid; width: 1.8rem; height: 1.8rem; flex: 0 0 1.8rem; place-items: center; border-radius: 50%; background: var(--ui-primary); color: #fff; font-size: .7rem; font-weight: 900; }
.admin-users__security strong, .admin-users__security p { display: block; }
.admin-users__security strong { font-size: .65rem; }
.admin-users__security p { margin: .18rem 0 0; color: var(--ui-text-muted); font-size: .56rem; line-height: 1.45; }
.admin-users__create { margin-bottom: 1rem; overflow: hidden; scroll-margin-top: 5rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.admin-users__create > summary { display: flex; min-height: 4.2rem; padding: .8rem 1rem; align-items: center; justify-content: space-between; gap: 1rem; cursor: pointer; list-style: none; }
.admin-users__create > summary::-webkit-details-marker { display: none; }
.admin-users__create > summary strong, .admin-users__create > summary small { display: block; }
.admin-users__create > summary strong { font-size: .72rem; }
.admin-users__create > summary small { margin-top: .18rem; color: var(--ui-text-muted); font-size: .55rem; }
.admin-users__create > summary i { color: var(--ui-primary); font-size: 1rem; font-style: normal; transition: transform .2s ease; }
.admin-users__create[open] > summary { border-bottom: 1px solid var(--ui-border); background: var(--ui-primary-soft); }
.admin-users__create[open] > summary i { transform: rotate(45deg); }
.admin-users__create form { display: grid; padding: 1rem; grid-template-columns: 1fr 1fr; gap: .8rem; }
.admin-users__create form > footer { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; gap: 1rem; }
.admin-users__create footer strong, .admin-users__create footer small { display: block; }
.admin-users__create footer strong { font-size: .61rem; }
.admin-users__create footer small { margin-top: .15rem; color: var(--ui-text-muted); font-size: .53rem; }
.admin-users__register { overflow: hidden; scroll-margin-top: 5rem; }
.admin-users__toolbar { display: grid; padding: .8rem 1rem; grid-template-columns: minmax(14rem,1fr) minmax(9rem,.55fr) minmax(9rem,.55fr) auto auto; align-items: end; gap: .65rem; border-bottom: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.admin-users__toolbar > output { align-self: center; color: var(--ui-text-muted); font-size: .55rem; font-weight: 750; white-space: nowrap; }
.admin-users__list { display: grid; }
.admin-user-case { border-bottom: 1px solid var(--ui-border); }
.admin-user-case:last-child { border-bottom: 0; }
.admin-user-case > summary { display: grid; min-height: 4.6rem; padding: .75rem 1rem; grid-template-columns: auto minmax(12rem,1fr) auto auto auto; align-items: center; gap: .75rem; cursor: pointer; list-style: none; }
.admin-user-case > summary::-webkit-details-marker { display: none; }
.admin-user-case > summary:hover { background: var(--ui-surface-muted); }
.admin-user-case[open] > summary { background: var(--ui-primary-soft); }
.admin-user-case__avatar { display: grid; width: 2.35rem; height: 2.35rem; place-items: center; border-radius: .65rem; background: var(--ui-primary); color: #fff; font-size: .68rem; font-weight: 850; }
.admin-user-case__identity { min-width: 0; }
.admin-user-case__identity strong, .admin-user-case__identity small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-user-case__identity strong { font-size: .67rem; }
.admin-user-case__identity small { margin-top: .14rem; color: var(--ui-text-muted); font-size: .53rem; }
.admin-user-case > summary > i { color: var(--ui-text-muted); font-size: .8rem; font-style: normal; transition: transform .2s ease; }
.admin-user-case[open] > summary > i { transform: rotate(180deg); }
.admin-user-case__body { display: grid; padding: 1rem; grid-template-columns: minmax(0,1fr) minmax(0,.85fr) minmax(14rem,.55fr); align-items: start; gap: 1rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface); }
.admin-user-case__body > section, .admin-user-case__access { min-width: 0; }
.admin-user-case__body h3 { margin: 0 0 .65rem; font-size: .65rem; }
.admin-user-case__body dl { display: grid; margin: 0; grid-template-columns: 1fr 1fr; gap: .5rem; }
.admin-user-case__body dl > div { min-width: 0; padding: .55rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.admin-user-case__body dt { color: var(--ui-text-muted); font-size: .5rem; }
.admin-user-case__body dd { margin: .15rem 0 0; font-size: .56rem; font-weight: 750; overflow-wrap: anywhere; }
.admin-user-case__activity { margin: 0; padding: 0; list-style: none; }
.admin-user-case__activity li { display: flex; padding: .45rem 0; align-items: flex-start; gap: .45rem; border-bottom: 1px solid var(--ui-border); }
.admin-user-case__activity li:last-child { border-bottom: 0; }
.admin-user-case__activity li > span { color: var(--ui-primary); }
.admin-user-case__activity strong, .admin-user-case__activity small { display: block; }
.admin-user-case__activity strong { font-size: .56rem; }
.admin-user-case__activity small, .admin-user-case__empty { margin-top: .12rem; color: var(--ui-text-muted); font-size: .5rem; }
.admin-user-case__access { padding: .75rem; border: 1px solid var(--ui-border); border-radius: .65rem; background: var(--ui-surface-muted); }
.admin-user-case__access p { margin: 0 0 .7rem; }
.admin-user-case__access p strong, .admin-user-case__access p small { display: block; }
.admin-user-case__access p strong { font-size: .59rem; }
.admin-user-case__access p small { margin-top: .2rem; color: var(--ui-text-muted); font-size: .51rem; line-height: 1.45; }
.admin-user-case__access form, .admin-user-case__access .ui-button { width: 100%; }
.admin-user-case__access .ui-button { border: 0; cursor: pointer; }
.admin-user-case__access .ui-button--danger { background: var(--ui-danger); color: #fff !important; }
.admin-user-case__access .ui-button--danger:hover { filter: brightness(.92); }

/* Identité des marques et formats de bouteilles */
.product-identity { display: inline-flex; min-width: 0; align-items: center; gap: .65rem; }
.product-identity__text { min-width: 0; }
.product-identity__text strong, .product-identity__text small { display: block; }
.product-identity__text strong { overflow: hidden; color: var(--ui-text); font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.product-identity__text small { display: flex; margin-top: .18rem; align-items: center; gap: .3rem; color: var(--ui-text-muted); font-size: .56rem; white-space: nowrap; }
.brand-color-dot { width: .55rem; height: .55rem; flex: 0 0 .55rem; border: 1px solid rgba(0,0,0,.16); border-radius: 50%; background: var(--brand-color); }
.gas-bottle { position: relative; display: inline-block; width: 2.6rem; height: 3.1rem; flex: 0 0 2.6rem; }
.gas-bottle i { position: absolute; z-index: 1; top: .08rem; left: 50%; width: .8rem; height: .52rem; border: .17rem solid var(--bottle-color); border-bottom: 0; border-radius: .18rem .18rem 0 0; transform: translateX(-50%); }
.gas-bottle b { position: absolute; bottom: .08rem; left: 50%; border: 1px solid rgba(0,0,0,.18); border-radius: .52rem .52rem .38rem .38rem; background: var(--bottle-color); box-shadow: inset .35rem 0 rgba(255,255,255,.18); transform: translateX(-50%); }
.gas-bottle b::before { position: absolute; top: -.32rem; left: 50%; width: 65%; height: .42rem; border-radius: .2rem .2rem 0 0; background: var(--bottle-color); content: ''; transform: translateX(-50%); }
.gas-bottle--3 b { width: 1.35rem; height: 1.45rem; }.gas-bottle--6 b { width: 1.65rem; height: 1.95rem; }.gas-bottle--12 b { width: 2rem; height: 2.55rem; }
.product-identity--compact .gas-bottle { width: 2.3rem; height: 2.75rem; flex-basis: 2.3rem; }
.product-identity--compact .gas-bottle--3 b { width: 1.15rem; height: 1.25rem; }.product-identity--compact .gas-bottle--6 b { width: 1.42rem; height: 1.7rem; }.product-identity--compact .gas-bottle--12 b { width: 1.72rem; height: 2.25rem; }
.article-shape { display: grid; width: 2.3rem; height: 2.3rem; flex: 0 0 2.3rem; place-items: center; border-radius: .55rem; background: var(--ui-surface-muted); color: var(--ui-primary); }
.catalogue-brand-layout { display: grid; padding: 1rem; grid-template-columns: minmax(0,1fr) minmax(19rem,.55fr); align-items: start; gap: 1rem; border: 1px solid var(--ui-border); border-top: 0; border-radius: 0 0 var(--ui-radius) var(--ui-radius); background: var(--ui-surface-muted); }
.catalogue-brand-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.catalogue-brand-list article { display: flex; min-height: 4.2rem; padding: .7rem; align-items: center; gap: .65rem; border: 1px solid var(--ui-border); border-radius: .65rem; background: var(--ui-surface); }
.catalogue-brand-list article > div { min-width: 0; flex: 1; }.catalogue-brand-list strong, .catalogue-brand-list small { display: block; }.catalogue-brand-list strong { font-size: .68rem; }.catalogue-brand-list small { margin-top: .15rem; color: var(--ui-text-muted); font-size: .54rem; }
.brand-swatch { width: 2rem; height: 2rem; flex: 0 0 2rem; border: 2px solid #fff; border-radius: 50%; background: var(--brand-color); box-shadow: 0 0 0 1px rgba(0,0,0,.18); }
.brand-color-picker { display: grid; margin: 0; padding: 0; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .45rem; border: 0; }.brand-color-picker legend { margin-bottom: .45rem; color: var(--ui-text-muted); font-size: .56rem; font-weight: 750; }.brand-color-picker label { cursor: pointer; }.brand-color-picker input { position: absolute; opacity: 0; pointer-events: none; }
.brand-color-picker label > span { display: flex; min-height: 2.75rem; padding: .5rem .6rem; align-items: center; gap: .45rem; border: 1px solid var(--ui-border); border-radius: .5rem; background: #fff; font-size: .58rem; font-weight: 700; }.brand-color-picker label i { width: 1rem; height: 1rem; border: 1px solid rgba(0,0,0,.18); border-radius: 50%; background: var(--brand-color); }.brand-color-picker input:checked + span { border-color: var(--ui-primary); box-shadow: inset 0 0 0 1px var(--ui-primary); }.brand-color-picker input:focus-visible + span { outline: .1875rem solid #dc8d69; outline-offset: .125rem; }

/* Journal d’audit Administrateur */
.audit-metrics { margin-bottom: 1rem; }
.audit-integrity { display: flex; margin-bottom: 1rem; padding: .85rem 1rem; align-items: center; gap: .7rem; border: 1px solid #bbf7d0; border-radius: var(--ui-radius); background: var(--ui-success-soft); }
.audit-integrity > span { display: grid; width: 1.8rem; height: 1.8rem; flex: 0 0 1.8rem; place-items: center; border-radius: 50%; background: var(--ui-success); color: #fff; font-size: .67rem; font-weight: 850; }
.audit-integrity strong, .audit-integrity p { display: block; }
.audit-integrity strong { font-size: .65rem; }
.audit-integrity p { margin: .18rem 0 0; color: var(--ui-text-muted); font-size: .56rem; line-height: 1.45; }
.audit-filter-card { margin-bottom: 1rem; overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); box-shadow: var(--ui-shadow); }
.audit-filter-card > header { display: flex; min-height: 4.3rem; padding: .8rem 1rem; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--ui-border); }
.audit-filter-card h2 { margin: 0; font-size: .8rem; }
.audit-filter-card form { display: grid; padding: 1rem; grid-template-columns: minmax(13rem,1.2fr) repeat(3,minmax(9rem,.75fr)); gap: .75rem; }
.audit-filter-card__search { grid-column: span 2; }
.audit-filter-card__actions { display: flex; grid-column: span 2; align-items: end; justify-content: flex-end; gap: .55rem; }
.audit-filter-card > footer { display: flex; min-height: 3.2rem; padding: .65rem 1rem; align-items: center; justify-content: space-between; gap: .8rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface-muted); color: var(--ui-text-muted); font-size: .56rem; }
.audit-filter-card > footer a { color: var(--ui-primary) !important; font-weight: 800; }
.audit-register { overflow: hidden; }
.audit-event-list { display: grid; }
.audit-event { border-bottom: 1px solid var(--ui-border); }
.audit-event:last-child { border-bottom: 0; }
.audit-event > summary { display: grid; min-height: 4.8rem; padding: .75rem 1rem; grid-template-columns: 4rem auto minmax(12rem,1fr) minmax(9rem,.55fr) auto auto; align-items: center; gap: .75rem; cursor: pointer; list-style: none; }
.audit-event > summary::-webkit-details-marker { display: none; }
.audit-event > summary:hover { background: var(--ui-surface-muted); }
.audit-event[open] > summary { background: var(--ui-primary-soft); }
.audit-event time strong, .audit-event time small, .audit-event__main strong, .audit-event__main small, .audit-event__actor strong, .audit-event__actor small { display: block; }
.audit-event time strong { font-size: .57rem; }
.audit-event time small { margin-top: .14rem; color: var(--ui-text-muted); font-size: .5rem; }
.audit-event__marker { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: .55rem; background: var(--ui-primary-soft); color: var(--ui-primary); font-size: .61rem; font-weight: 850; }
.audit-event__main, .audit-event__actor { min-width: 0; }
.audit-event__main strong, .audit-event__actor strong { overflow: hidden; font-size: .61rem; text-overflow: ellipsis; white-space: nowrap; }
.audit-event__main small, .audit-event__actor small { margin-top: .14rem; overflow: hidden; color: var(--ui-text-muted); font-size: .51rem; text-overflow: ellipsis; white-space: nowrap; }
.audit-event > summary > i { color: var(--ui-text-muted); font-size: .8rem; font-style: normal; transition: transform .2s ease; }
.audit-event[open] > summary > i { transform: rotate(180deg); }
.audit-event__body { display: grid; padding: 1rem; grid-template-columns: 1fr 1fr minmax(12rem,.5fr); align-items: start; gap: 1rem; border-top: 1px solid var(--ui-border); }
.audit-event__body h3 { margin: 0 0 .6rem; font-size: .64rem; }
.audit-event__body dl { display: grid; margin: 0; grid-template-columns: 1fr 1fr; gap: .45rem; }
.audit-event__body dl > div { min-width: 0; padding: .55rem; border-radius: .5rem; background: var(--ui-surface-muted); }
.audit-event__body dt { color: var(--ui-text-muted); font-size: .5rem; }
.audit-event__body dd { margin: .15rem 0 0; font-size: .55rem; font-weight: 750; overflow-wrap: anywhere; }
.audit-event__body > aside { padding: .7rem; border: 1px solid var(--ui-border); border-radius: .6rem; background: var(--ui-surface-muted); }
.audit-event__body > aside strong { font-size: .58rem; }
.audit-event__body > aside p { margin: .35rem 0 0; color: var(--ui-text-muted); font-size: .5rem; overflow-wrap: anywhere; }
.audit-event__body code { font-size: .48rem; }
.audit-event__empty { margin: 0; padding: .75rem; border-radius: .5rem; background: var(--ui-surface-muted); color: var(--ui-text-muted); font-size: .54rem; }
.audit-pagination { display: flex; min-height: 4rem; padding: .7rem 1rem; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--ui-border); background: var(--ui-surface-muted); }
.audit-pagination p { margin: 0; color: var(--ui-text-muted); font-size: .55rem; }
.audit-pagination nav { display: flex; gap: .5rem; }
.audit-pagination [aria-disabled="true"] { opacity: .48; cursor: not-allowed; }

@media (max-width: 72rem) {
    .ui-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .seller-home__grid { grid-template-columns: 1fr; }
    .sale-form__layout { grid-template-columns: 1fr; }
    .sale-summary { position: static; }
    .sale-summary__card { display: grid; grid-template-columns: minmax(0,1fr) minmax(16rem,.7fr); column-gap: 1.5rem; }
    .sale-summary__card header, .sale-summary__product, .sale-summary dl { grid-column: 1; }
    .sale-summary__total, .sale-summary__feedback, .sale-summary__server-note, .sale-summary .sale-submit, .sale-summary .sale-cancel { grid-column: 2; }
    .sale-summary__total { grid-row: 1 / span 2; align-self: start; }
    .point-layout { grid-template-columns: 1fr; }
    .point-summary { position: static; }
    .point-payment-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .mobile-account-grid { grid-template-columns: 1fr; }
    .mobile-account__figures { grid-template-columns: repeat(4,minmax(0,1fr)); }
    .advance-layout { grid-template-columns: 1fr; }
    .advance-detail { position: static; grid-row: 1; }
    .advance-list__item { grid-template-columns: minmax(11rem,1.1fr) minmax(8rem,.8fr) minmax(15rem,1fr) auto; }
    .advance-list__reason { display: none; }
    .history-filters { grid-template-columns: 1fr 1fr auto; }
    .history-filters .ui-button:last-child { grid-column: 1 / -1; justify-self: start; }
    .control-priority-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .control-task-grid { grid-template-columns: 1fr; }
    .cash-case__grid { grid-template-columns: 1fr; }
    .cash-decision { position: static; }
    .inventory-item__movement { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .inventory-item__count { grid-template-columns: minmax(14rem,1fr) minmax(8rem,.45fr); }
    .inventory-item__note { grid-column: 1 / -1; }
    .arrival-layout { grid-template-columns: 1fr; }
    .arrival-create { position: static; grid-row: 1; }
    .arrival-case__body { grid-template-columns: minmax(0,1fr) minmax(16rem,19rem); }
    .order-layout { grid-template-columns: 1fr; }
    .order-create { position: static; grid-row: 1; }
    .admin-kpi-grid { grid-template-columns: 1fr 1fr; }
    .available-now { grid-template-columns: 1fr 1fr; }
    .role-elsewhere { grid-template-columns: 1fr; }
    .admin-overview__grid, .admin-overview__secondary { grid-template-columns: 1fr; }
    .admin-center-summary > dl { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .catalogue-category-layout, .catalogue-brand-layout, .catalogue-management__grid { grid-template-columns: 1fr; }
    .catalogue-toolbar { grid-template-columns: 1fr 1fr; }
    .catalogue-toolbar > :first-child { grid-column: 1 / -1; }
    .catalogue-product-case > summary { grid-template-columns: minmax(12rem,1fr) minmax(8rem,.55fr) auto auto; }
    .catalogue-product-case > summary > div:nth-of-type(2), .catalogue-product-case > summary > div:nth-of-type(3) { display: none; }
    .catalogue-global-grid { grid-template-columns: 1fr 1fr; }
    .legacy-value-list form { grid-template-columns: 1fr; }
    .legacy-value-list form > div { grid-template-columns: 1fr 1fr; }
    .capital-position__grid { grid-template-columns: 1fr; }
    .capital-owner-summary { grid-template-columns: 1fr; }
    .capital-flow__steps { grid-template-columns: 1fr auto 1fr; }
    .capital-flow__steps > i:nth-of-type(2) { display: none; }
    .capital-flow__steps article:nth-of-type(3) { grid-column: 1; }
    .capital-equations { grid-template-columns: 1fr; }
    .capital-composition > dl { grid-template-columns: 1fr 1fr; }
    .capital-composition > dl > div:nth-of-type(3), .capital-composition > dl > div:nth-of-type(4), .capital-composition > dl > div:nth-of-type(5) { grid-column: span 1; }
    .capital-profit > div { grid-template-columns: 1fr auto 1fr; }
    .capital-profit-breakdown { grid-template-columns: 1fr; }
    .capital-profit > div article:nth-of-type(4), .capital-profit > div article:nth-of-type(5) { grid-column: span 1; }
    .report-hub-tabs { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .report-filter-card form { grid-template-columns: 1fr 1fr; }
    .report-filter-card form .ui-field:nth-of-type(3) { grid-column: 1 / -1; }
    .report-analysis-grid { grid-template-columns: 1fr; }
    .report-mobile-grid { grid-template-columns: 1fr; }
}

@media (max-width: 60rem) {
    .workspace-main { margin-left: 0; }
    .workspace-sidebar { width: min(19rem, calc(100vw - 3rem)); transform: translateX(-105%); box-shadow: 1rem 0 2rem rgba(15,23,42,.25); transition: transform .2s ease; }
    .workspace-sidebar.is-open { transform: translateX(0); }
    .workspace-header .mobile-menu-button { display: grid; min-width: 2.75rem; min-height: 2.75rem; place-items: center; }
    .seller-quick-actions { grid-template-columns: 1fr; }
    .has-open-menu { overflow: hidden; }
    .point-expense-form { grid-template-columns: 1fr 1fr; }
    .point-expense-form .ui-field:first-child { grid-column: 1 / -1; }
    .handover-card { grid-template-columns: 1fr; }
    .finance-operation-grid { grid-template-columns: 1fr; }
    .advance-list__item { grid-template-columns: minmax(0,1fr) auto; }
    .advance-list__item > dl { grid-column: 1 / -1; }
    .advance-list__status { grid-column: 1; }
    .advance-list__item > .ui-button { grid-column: 2; grid-row: 1; }
    .history-summary { grid-template-columns: 1fr; }
    .control-secondary-grid { grid-template-columns: 1fr; }
    .control-day-summary > dl { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .live-position-grid { grid-template-columns:1fr; }
    .cash-review-steps { grid-template-columns: 1fr; }
    .closure-audit-timeline { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .closure-audit-list > article > dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .cash-mobile-grid, .cash-stock-grid { grid-template-columns: 1fr; }
    .inventory-item__movement { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .order-flow ol { grid-template-columns: 1fr 1fr; gap: .75rem 0; }
    .order-flow li:nth-child(2)::after { display: none; }
    .order-case__content { grid-template-columns: 1fr; }
    .admin-center-summary > dl { grid-template-columns: 1fr 1fr; }
    .catalogue-product-overview dl, .catalogue-product-stock dl, .catalogue-sale-tariff dl { grid-template-columns: 1fr 1fr; }
    .catalogue-sale-tariff form > div { grid-template-columns: 1fr; }
    .catalogue-sale-tariff__grids { grid-template-columns: 1fr; }
    .stock-correction form > div { grid-template-columns: 1fr; }
    .catalogue-lot-table thead { display: none; }
    .catalogue-lot-table, .catalogue-lot-table tbody, .catalogue-lot-table tr, .catalogue-lot-table td { display: block; width: 100%; }
    .catalogue-lot-table tr { padding: .7rem .8rem; border-bottom: 1px solid var(--ui-border); }
    .catalogue-lot-table td { display: flex; padding: .4rem 0; justify-content: space-between; gap: 1rem; border: 0; text-align: right; }
    .catalogue-lot-table td::before { color: var(--ui-text-muted); content: attr(data-label); font-weight: 700; text-align: left; }
    .catalogue-global-grid { grid-template-columns: 1fr; }
    .catalogue-alert-grid { grid-template-columns: 1fr; }
    .capital-management { grid-template-columns: 1fr; }
    .capital-flow__steps { grid-template-columns: 1fr; }
    .capital-flow__steps > i { display: none; }
    .capital-flow__steps article:nth-of-type(3) { grid-column: auto; }
    .capital-composition > dl, .capital-profit > div { grid-template-columns: 1fr; }
    .capital-composition > dl > div.is-total { grid-column: auto; }
    .capital-composition > dl > i, .capital-profit > div > i { justify-self: center; transform: rotate(90deg); }
    .capital-composition > dl > div:nth-of-type(3), .capital-composition > dl > div:nth-of-type(4), .capital-composition > dl > div:nth-of-type(5), .capital-profit > div article:nth-of-type(4), .capital-profit > div article:nth-of-type(5) { grid-column: auto; }
    .report-dual-register { grid-template-columns: 1fr; }
    .admin-users__toolbar { grid-template-columns: 1fr 1fr; }
    .admin-users__toolbar > .ui-field:first-child { grid-column: 1 / -1; }
    .admin-users__toolbar > output { justify-self: end; }
    .admin-user-case > summary { grid-template-columns: auto minmax(0,1fr) auto; }
    .admin-user-case > summary > .ui-badge { grid-column: 2; justify-self: start; }
    .admin-user-case > summary > i { grid-column: 3; grid-row: 1; }
    .audit-filter-card form { grid-template-columns: 1fr 1fr; }
    .audit-filter-card__search { grid-column: 1 / -1; }
    .audit-event > summary { grid-template-columns: 4rem auto minmax(0,1fr) auto; }
    .audit-event__actor, .audit-event > summary > .ui-badge { grid-column: 3; }
    .audit-event > summary > i { grid-column: 4; grid-row: 1; }
    .audit-event__body { grid-template-columns: 1fr 1fr; }
    .audit-event__body > aside { grid-column: 1 / -1; }
}

@media (max-width: 40rem) {
    .workspace-header { min-height: 4rem; padding: .625rem 1rem; }
    .workspace-header__context > div { display: none; }
    .workspace-header .admin-user-actions,
    .workspace-header .workspace-user { min-width: 0; }
    .workspace-header .admin-user-actions { margin-left: auto; }
    .workspace-header .workspace-user > div {
        display: grid;
        max-width: min(10.5rem, calc(100vw - 12.5rem));
        justify-items: end;
        gap: .08rem;
        line-height: 1.2;
    }
    .workspace-header .workspace-user strong,
    .workspace-header .workspace-user small {
        display: block;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .workspace-header .workspace-user strong { font-size: .78rem; }
    .workspace-header .workspace-user small { font-size: .64rem; }
    .workspace-content { padding: 1rem; }
    .ui-page-header { align-items: stretch; flex-direction: column; }
    .ui-page-header .ui-button { width: 100%; }
    .role-circuit__step { grid-template-columns: auto minmax(0, 1fr); }
    .role-circuit__step .ui-button,
    .role-circuit__step .ui-badge { grid-column: 2; justify-self: start; }
    .role-circuit__step .ui-button { width: 100%; }
    .ui-metric-grid { grid-template-columns: 1fr; }
    .ui-metric-card > p { min-height: 0; }
    .live-session-list article > header { align-items:flex-start; flex-direction:column; }
    .live-position-grid dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .closure-audit-timeline,.closure-audit-list > article > dl { grid-template-columns:1fr; }
    .closure-audit-actions { align-items:stretch; flex-direction:column; }
    .closure-audit-actions .ui-button { width:100%; }
    .ui-card__header { align-items: flex-start; flex-direction: column; }
    .seller-sales-list li { grid-template-columns: auto minmax(0,1fr); }
    .seller-sales-list li > strong { grid-column: 2; text-align: left; }
    .seller-recent-action__cancel { grid-column: 1 / -1; }
    .seller-recent-action__cancel .ui-button { width: 100%; justify-self: stretch; }
    .sale-kind-tabs { display: grid; grid-template-columns: 1fr; }
    .sale-kind-tabs .ui-button { width: 100%; }
    .ui-form-grid { grid-template-columns: 1fr; }
    .ui-form-grid > .ui-button { width: 100%; justify-self: stretch; }
    .sale-steps { display: flex; padding: .625rem; overflow-x: auto; scroll-snap-type: x mandatory; }
    .sale-steps li { min-width: 7.25rem; scroll-snap-align: start; }
    .sale-field-grid, .sale-field-grid--equal { grid-template-columns: 1fr; }
    .sale-summary__card { display: block; }
    .sale-summary__total { margin-top: 0; }
    .point-status { align-items: flex-start; }
    .point-status time { display: none; }
    .point-progress { display: flex; overflow-x: auto; }
    .point-progress::before { display: none; }
    .point-progress li { min-width: 7.5rem; }
    .point-payment-grid, .point-expense-form { grid-template-columns: 1fr; }
    .remittance-layout,.remittance-actions { grid-template-columns:1fr; }.remittance-amounts { grid-template-columns:1fr 1fr; }.remittance-list dl { grid-template-columns:1fr 1fr; }
    .point-tender-grid { grid-template-columns: 1fr; padding: .85rem; }
    .point-tender > header { align-items: flex-start; flex-direction: column; }
    .point-tender__fields { grid-template-columns: 1fr; }
    .point-tender__reason { grid-column: auto; }
    .point-stock-list { padding: .75rem; }
    .point-stock-row > header { align-items: flex-start; flex-direction: column; }
    .point-stock-row dl { grid-template-columns: repeat(2,1fr); }
    .point-stock-row__fields { grid-template-columns: 1fr; }
    .point-expense-form .ui-field:first-child { grid-column: auto; }
    .point-electronic-summary { align-items: flex-start; flex-direction: column; }
    .point-electronic-summary strong { margin-left: 0; }
    .point-expense-list article { grid-template-columns: auto minmax(0,1fr); }
    .point-expense-list article > b, .point-expense-list article > a { grid-column: 2; }
    .point-session-debts__list li { grid-template-columns: 1fr; }
    .person-fiche > dl { grid-template-columns: 1fr; }
    .point-stock-table thead { display: none; }
    .point-stock-table, .point-stock-table tbody, .point-stock-table tr, .point-stock-table td { display: block; width: 100%; }
    .point-stock-table tr { padding: .75rem 1rem; border-bottom: 1px solid var(--ui-border); }
    .point-stock-table tr:last-child { border-bottom: 0; }
    .point-stock-table td { display: flex; padding: .45rem 0; justify-content: space-between; gap: 1rem; border: 0; text-align: right; white-space: normal; }
    .point-stock-table td::before { color: var(--ui-text-muted); content: attr(data-label); font-size: .68rem; font-weight: 700; text-align: left; }
    .point-stock-table td:first-child { display: block; padding-bottom: .75rem; text-align: left; }
    .point-stock-table td:first-child::before { display: block; margin-bottom: .3rem; }
    .handover-status { flex-wrap: wrap; }
    .mobile-account__figures, .finance-form, .finance-form--two { grid-template-columns: 1fr; }
    .finance-ledger li { grid-template-columns: auto minmax(0,1fr); }
    .finance-ledger li > b { grid-column: 2; }
    .customer-account-action { align-items: stretch; flex-direction: column; }
    .customer-account-action .ui-button { width: 100%; }
    .advance-list__item { padding: .9rem; }
    .advance-list__item > dl { grid-template-columns: 1fr; }
    .advance-list__item > dl div { display: flex; justify-content: space-between; gap: .75rem; }
    .advance-list__item > .ui-button { grid-column: 1 / -1; grid-row: auto; width: 100%; }
    .advance-detail__amounts { grid-template-columns: 1fr; }
    .advance-detail__facts p { align-items: flex-start; flex-direction: column; gap: .2rem; }
    .advance-detail__facts strong { max-width: none; text-align: left; }
    .history-filters { grid-template-columns: 1fr; }
    .history-filters .ui-button, .history-filters .ui-button:last-child { grid-column: auto; width: 100%; justify-self: stretch; }
    .history-table { min-width: 0; }
    .history-table thead { display: none; }
    .history-table, .history-table tbody, .history-table tr, .history-table td { display: block; width: 100%; }
    .history-table tr { padding: .8rem 1rem; border-bottom: 1px solid var(--ui-border); }
    .history-table tr:last-child { border-bottom: 0; }
    .history-table td { display: flex; padding: .42rem 0; align-items: flex-start; justify-content: space-between; gap: 1rem; border: 0; text-align: right; }
    .history-table td::before { color: var(--ui-text-muted); content: attr(data-label); font-size: .65rem; font-weight: 700; text-align: left; }
    .history-table td :is(strong, small) { text-align: right; }
    .history-ticket-link { padding: 0; min-height: 2.75rem; }
    .history-pagination { align-items: stretch; flex-direction: column; }
    .history-pagination nav { justify-content: space-between; }
    .history-pagination nav :is(a, span) { flex: 1; }
    .control-priority-grid { grid-template-columns: 1fr; }
    .control-priority { min-height: 6.5rem; }
    .control-task-list li { grid-template-columns: auto minmax(0,1fr); }
    .control-task-list li > .ui-badge, .control-task-list li > a { grid-column: 2; justify-self: start; }
    .control-handover-list > article { grid-template-columns: 1fr; }
    .control-handover-progress { flex-wrap: wrap; }
    .control-handover-list form .ui-button { width: 100%; }
    .control-day-summary > dl { grid-template-columns: 1fr; }
    .cash-case > summary { grid-template-columns: auto minmax(0,1fr) auto; }
    .cash-case > summary > div:nth-child(3), .cash-case > summary > .ui-badge { grid-column: 2; text-align: left; justify-self: start; }
    .cash-case > summary > div:nth-child(3) span, .cash-case > summary > div:nth-child(3) strong { text-align: left; }
    .cash-case > summary > i { grid-column: 3; grid-row: 1; }
    .cash-case__body { padding: .75rem; }
    .cash-case__overview { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .cash-document-list li { grid-template-columns: minmax(0,1fr) auto; }
    .cash-document-list li > :last-child { grid-column: 1 / -1; justify-self: start; }
    .inventory-item > header { align-items: flex-start; flex-wrap: wrap; }
    .inventory-item > header .ui-badge { margin-left: 2.7rem; }
    .inventory-item__movement { grid-template-columns: 1fr 1fr; }
    .inventory-item__movement > div.is-total { grid-column: 1 / -1; }
    .inventory-item__count { grid-template-columns: 1fr; }
    .inventory-item__count fieldset { grid-template-columns: 1fr 1fr; }
    .inventory-item__note { grid-column: auto; }
    .inventory-submit-bar { position: static; align-items: stretch; flex-direction: column; }
    .inventory-submit-bar .ui-button { width: 100%; }
    .arrival-layout { grid-template-columns: 1fr; }
    .arrival-create { position: static; grid-row: 1; }
    .arrival-case__body { grid-template-columns: minmax(0,1fr) minmax(16rem,19rem); }
    .order-flow > header { flex-direction: column; }
    .order-flow > header > p { text-align: left; }
    .order-flow ol { grid-template-columns: 1fr; gap: .6rem; }
    .order-flow li::after { display: none; }
    .order-case__product dl { grid-template-columns: 1fr; }
    .order-case__footer { align-items: stretch; flex-direction: column; }
    .order-case__actions { align-items: stretch; flex-direction: column; }
    .order-case__actions form, .order-case__actions .ui-button { width: 100%; }
    .order-create__grid { grid-template-columns: 1fr; }
    .admin-kpi-grid { grid-template-columns: 1fr; }
    .available-now { grid-template-columns: 1fr; }
    .admin-alert-list article { grid-template-columns: auto minmax(0,1fr) auto; }
    .admin-alert-list article > a, .admin-alert-list article > small { grid-column: 2 / -1; min-width: 0; text-align: left; }
    .admin-sales-trend > .ui-card__header nav { width: 100%; }
    .admin-sales-trend > .ui-card__header nav a { flex: 1; }
    .admin-sales-trend > footer { align-items: flex-start; flex-wrap: wrap; }
    .admin-sales-trend > footer a { width: 100%; margin-left: 0; }
    .admin-center-summary > dl { grid-template-columns: 1fr; }
    .admin-critical-stock ul { grid-template-columns: 1fr; }
    .catalogue-section__header { align-items: stretch; flex-direction: column; }
    .catalogue-section__header .ui-button { width: 100%; }
    .catalogue-toolbar { grid-template-columns: 1fr; }
    .catalogue-toolbar > :first-child { grid-column: auto; }
    .catalogue-toolbar .ui-button { width: 100%; }
    .catalogue-brand-list { grid-template-columns: 1fr; }
    .catalogue-product-case > summary { grid-template-columns: minmax(0,1fr) auto; }
    .catalogue-product-case > summary > div:nth-of-type(1), .catalogue-product-case > summary > .ui-badge { grid-column: 1; justify-self: start; }
    .catalogue-product-case > summary > i { grid-column: 2; grid-row: 1; }
    .catalogue-product-overview dl, .catalogue-product-stock dl, .catalogue-sale-tariff dl { grid-template-columns: 1fr; }
    .catalogue-product-history li, .catalogue-movement-list article { grid-template-columns: 1fr auto auto; }
    .catalogue-product-history time, .catalogue-movement-list time { grid-column: 1 / -1; }
    .catalogue-task form { grid-template-columns: 1fr; }
    .catalogue-task form > footer, .catalogue-task__wide { grid-column: auto; }
    .catalogue-task form > footer { align-items: stretch; flex-direction: column; }
    .catalogue-task form > footer .ui-button { width: 100%; }
    .legacy-value-list form > div { grid-template-columns: 1fr; }
    .legacy-value-list form > .ui-button { width: 100%; }
    .capital-position > header, .capital-flow > header, .capital-profit > header { align-items: stretch; flex-direction: column; }
    .capital-flow > header > p { text-align: left; }
    .capital-adjustment form { grid-template-columns: 1fr; }
    .capital-adjustment__reason { grid-column: auto; }
    .capital-adjustment form > .ui-button { width: 100%; }
    .capital-history__table thead { display: none; }
    .capital-history__table, .capital-history__table tbody, .capital-history__table tr, .capital-history__table td { display: block; width: 100%; }
    .capital-history__table tr { padding: .75rem .9rem; border-bottom: 1px solid var(--ui-border); }
    .capital-history__table td { display: flex; padding: .4rem 0; align-items: flex-start; justify-content: space-between; gap: 1rem; border: 0; text-align: right; }
    .capital-history__table td::before { color: var(--ui-text-muted); content: attr(data-label); font-size: .57rem; font-weight: 700; text-align: left; }
    .capital-history__table td > :is(strong, small, time, span) { text-align: right; }
    .report-hub-tabs { display: flex; overflow-x: auto; }
    .report-hub-tabs a { min-width: 9rem; flex: 0 0 auto; }
    .report-module-header { align-items: stretch; flex-direction: column; }
    .report-module-header .ui-button { width: 100%; }
    .report-filter-card > header { align-items: flex-start; flex-direction: column; }
    .report-filter-card form { grid-template-columns: 1fr; }
    .report-filter-card form .ui-field:nth-of-type(3) { grid-column: auto; }
    .report-filter-card form .ui-button { width: 100%; }
    .report-register thead { display: none; }
    .report-register table, .report-register tbody, .report-register tr, .report-register td { display: block; width: 100%; }
    .report-register tr { padding: .75rem .9rem; border-bottom: 1px solid var(--ui-border); }
    .report-register td { display: flex; padding: .4rem 0; align-items: flex-start; justify-content: space-between; gap: 1rem; border: 0; text-align: right; }
    .report-register td::before { color: var(--ui-text-muted); content: attr(data-label); font-size: .56rem; font-weight: 700; text-align: left; }
    .report-register td > :is(strong, small, span) { text-align: right; }
    .report-register > footer, .report-current-note { align-items: stretch; flex-direction: column; }
    .report-current-note a { min-height: 2.75rem; }
    .report-dual-register li { grid-template-columns: minmax(0,1fr) auto; }
    .report-dual-register li > .ui-badge { grid-column: 1 / -1; justify-self: start; }
    .admin-users__tabs { overflow-x: auto; }
    .admin-users__tabs a { min-width: max-content; flex: 1 0 auto; }
    .admin-users__create form, .admin-users__toolbar, .admin-user-case__body { grid-template-columns: 1fr; }
    .admin-users__create form > footer, .admin-users__toolbar > .ui-field:first-child, .admin-user-case__access { grid-column: auto; }
    .admin-users__create form > footer { align-items: stretch; flex-direction: column; }
    .admin-users__create form > footer .ui-button, .admin-users__toolbar .ui-button { width: 100%; }
    .admin-users__toolbar > output { justify-self: start; }
    .admin-user-case__body dl { grid-template-columns: 1fr; }
    .audit-filter-card > header, .audit-filter-card > footer, .audit-pagination { align-items: stretch; flex-direction: column; }
    .audit-filter-card form { grid-template-columns: 1fr; }
    .audit-filter-card__search, .audit-filter-card__actions { grid-column: auto; }
    .audit-filter-card__actions { align-items: stretch; flex-direction: column; }
    .audit-filter-card__actions .ui-button { width: 100%; }
    .audit-event > summary { grid-template-columns: 3.5rem auto minmax(0,1fr) auto; }
    .audit-event__main { grid-column: 3; }
    .audit-event__actor, .audit-event > summary > .ui-badge { grid-column: 3; justify-self: start; }
    .audit-event__body, .audit-event__body dl { grid-template-columns: 1fr; }
    .audit-event__body > aside { grid-column: auto; }
    .audit-pagination nav { width: 100%; }
    .audit-pagination nav > * { flex: 1; }
}

@media (max-width: 48rem) {
    .arrival-case > summary { grid-template-columns: auto minmax(0,1fr) auto; }
    .arrival-case > summary > div:nth-of-type(2), .arrival-case > summary > div:nth-of-type(3), .arrival-case > summary > .ui-badge { grid-column: 2; justify-self: start; }
    .arrival-case > summary > i { grid-column: 3; grid-row: 1; }
    .arrival-case__body { padding: .75rem; grid-template-columns: 1fr; }
    .arrival-evidence > header { flex-direction: column; }
    .arrival-evidence > header > small { text-align: left; }
    .arrival-line dl, .arrival-case__facts { grid-template-columns: 1fr 1fr; }
    .arrival-form-grid { grid-template-columns: 1fr; }
    .arrival-form-grid__wide { grid-column: auto; }
}

@media (max-width: 24rem) {
    .arrival-line dl, .arrival-case__facts { grid-template-columns: 1fr; }
    .arrival-line > footer { align-items: flex-start; flex-direction: column; }
}

/* Refonte de l'espace administrateur : priorité à la lecture et aux actions utiles. */
.admin-overview__stock { margin-bottom: 1rem; }
.admin-overview__stock > .capacity-stock-summary { margin: 0; border: 0; border-top: 1px solid var(--ui-border); border-radius: 0; box-shadow: none; }

.admin-catalogue .section-jump-nav,
.admin-capital .section-jump-nav {
    position: sticky;
    z-index: 8;
    top: .75rem;
    box-shadow: 0 .5rem 1.5rem rgba(52, 32, 25, .08);
}

.catalogue-brand-list,
.catalogue-category-list,
.catalogue-product-list,
.catalogue-global-grid,
.catalogue-movement-list,
.legacy-value-list {
    max-height: 36rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.catalogue-product-list { max-height: 42rem; padding-right: .35rem; }
.catalogue-brand-list,
.catalogue-category-list { max-height: 28rem; }
.catalogue-movement-list { max-height: 32rem; }
.catalogue-global-grid,
.legacy-value-list { max-height: 38rem; }

.catalogue-brand-list:focus-within,
.catalogue-category-list:focus-within,
.catalogue-product-list:focus-within,
.catalogue-movement-list:focus-within { outline: 2px solid var(--ui-primary); outline-offset: 2px; }

.capital-history__table,
.report-register > div,
.report-seller-mobile .module-table-wrap,
.audit-event-list,
.initial-register-page .customer-account-list {
    max-height: 34rem;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.capital-history__table thead,
.report-register thead,
.report-seller-mobile thead {
    position: sticky;
    z-index: 2;
    top: 0;
}

.opening-context-nav { display: flex; margin: -.25rem 0 1rem; flex-wrap: wrap; gap: .5rem; }

.financial-opening > .ui-card { margin-bottom: 1rem; overflow: hidden; }
.financial-opening > .ui-card > .metric-grid {
    display: grid;
    padding: 1rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
    border-top: 1px solid var(--ui-border);
    background: var(--ui-surface-muted);
}
.financial-opening > .ui-card > .metric-grid article {
    min-width: 0;
    padding: .9rem;
    border: 1px solid var(--ui-border);
    border-radius: .7rem;
    background: var(--ui-surface);
}
.financial-opening > .ui-card > .metric-grid span,
.financial-opening > .ui-card > .metric-grid strong { display: block; }
.financial-opening > .ui-card > .metric-grid span { color: var(--ui-text-muted); font-size: .64rem; }
.financial-opening > .ui-card > .metric-grid strong { margin-top: .35rem; color: var(--ui-text); font-size: .85rem; }
.financial-opening > .ui-card > form.ui-form-grid {
    margin: 0;
    padding: 1rem;
    border-top: 1px solid var(--ui-border);
    background: var(--ui-surface-muted);
}
.financial-opening > .ui-card > form.ui-form-grid + .customer-account-list { border-top: 1px solid var(--ui-border); }
.financial-opening > .ui-card > .customer-account-list:empty { display: none; }

@media (max-width: 42rem) {
    .admin-catalogue .section-jump-nav,
    .admin-capital .section-jump-nav { top: .25rem; }

    .catalogue-product-list,
    .catalogue-brand-list,
    .catalogue-category-list,
    .catalogue-global-grid,
    .catalogue-movement-list,
    .legacy-value-list,
    .capital-history__table,
    .report-register > div,
    .report-seller-mobile .module-table-wrap,
    .audit-event-list,
    .initial-register-page .customer-account-list { max-height: none; overflow: visible; }

    .opening-context-nav .ui-button { width: 100%; }
    .financial-opening > .ui-card > .metric-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 30rem) {
    .financial-opening > .ui-card > .metric-grid { grid-template-columns: 1fr; }
}

.supplier-brand-picker { grid-column: 1 / -1; margin: 0; padding: .85rem; border: 1px solid var(--ui-border); border-radius: .7rem; }
.supplier-brand-picker > p { margin: .2rem 0 .75rem; color: var(--ui-text-muted); font-size: .68rem; }
.supplier-brand-picker > div { display: flex; flex-wrap: wrap; gap: .5rem; }
.supplier-brand-picker label { display: inline-flex; min-height: 2.75rem; padding: .55rem .7rem; align-items: center; gap: .45rem; border: 1px solid var(--ui-border); border-radius: .6rem; background: var(--ui-surface); font-size: .72rem; font-weight: 700; cursor: pointer; }
.supplier-brand-picker label:has(input:checked) { border-color: var(--ui-primary); background: var(--ui-primary-soft); color: var(--ui-primary); }
.supplier-brand-picker input { width: 1rem; height: 1rem; }
.supplier-brand-picker .brand-swatch { width: .85rem; height: .85rem; border-radius: 50%; background: var(--brand-color); }
.customer-account-list .admin-inline-edit { margin-top: .75rem; }
.customer-account-list .admin-inline-edit > form { padding: .75rem 0 0; }
.customer-account-list .admin-inline-edit .profile-readonly { grid-column: 1 / -1; margin: 0; }
.customer-account-list .admin-inline-edit > small { display: block; margin-top: .5rem; color: var(--ui-text-muted); }
.initial-register-page > .ui-alert { margin: 0 0 1rem; }

@media (prefers-reduced-motion: reduce) {
    .workspace-page *, .workspace-page *::before, .workspace-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Socle de lisibilité et d'accessibilité commun aux trois espaces. */
.workspace-page { font-size: 1rem; }
.workspace-page :is(p, li, dd, td, label, input, select, textarea, button) { line-height: 1.45; }
.workspace-page :is(small, .ui-eyebrow, .ui-badge, th) { font-size: max(.75rem, 12px); }
.workspace-page :is(input, select, textarea, button, .ui-button) { min-height: 2.75rem; }
.workspace-page :is(a, button, input, select, textarea, summary):focus-visible { outline: .1875rem solid color-mix(in srgb, var(--ui-primary) 45%, white); outline-offset: .1875rem; }

@media (max-width: 42rem) {
    .module-table-wrap table:has(td[data-label]) { min-width: 0; }
    .module-table-wrap table:has(td[data-label]) thead { display: none; }
    .module-table-wrap table:has(td[data-label]) :is(tbody, tr, td) { display: block; width: 100%; }
    .module-table-wrap table:has(td[data-label]) tr { overflow: hidden; margin-bottom: .75rem; border: 1px solid var(--ui-border); border-radius: .65rem; background: var(--ui-surface); }
    .module-table-wrap table:has(td[data-label]) td { display: grid; min-height: 2.75rem; padding: .65rem .75rem; grid-template-columns: minmax(7rem, .8fr) minmax(0, 1.2fr); align-items: center; gap: .75rem; border-top: 1px solid var(--ui-border); overflow-wrap: anywhere; }
    .module-table-wrap table:has(td[data-label]) td:first-child { border-top: 0; }
    .module-table-wrap table:has(td[data-label]) td::before { content: attr(data-label); color: var(--ui-text-muted); font-size: .75rem; font-weight: 800; }
}

/* Harmonisation finale des surfaces et formulaires métier. */
.workspace-page {
    --ui-space-1: .375rem;
    --ui-space-2: .625rem;
    --ui-space-3: .875rem;
    --ui-space-4: 1.125rem;
    --ui-space-5: 1.5rem;
    --ui-card-padding: clamp(1rem, 2vw, 1.25rem);
    --ui-control-height: 3rem;
}

.workspace-content > :is(section, form, article, div) { min-width: 0; }
.workspace-content > section + section { margin-top: var(--ui-space-5); }

.workspace-page form,
.workspace-page fieldset,
.workspace-page label { min-width: 0; }

.workspace-page fieldset {
    max-width: 100%;
    margin-inline: 0;
}

.workspace-page :is(input:not([type='checkbox']):not([type='radio']):not([type='hidden']), select, textarea) {
    width: 100%;
    max-width: 100%;
    min-height: var(--ui-control-height);
    padding: .75rem .875rem;
    border: 1px solid var(--ui-border-strong);
    border-radius: .625rem;
    background: var(--ui-surface);
    color: var(--ui-text);
    font: inherit;
    font-size: max(.875rem, 14px);
    line-height: 1.35;
}

.workspace-page textarea {
    min-height: 7rem;
    resize: vertical;
}

.workspace-page input[type='file'] {
    min-height: var(--ui-control-height);
    padding: .5rem;
    overflow: hidden;
}

.workspace-page input[type='file']::file-selector-button {
    min-height: 2rem;
    margin-right: .65rem;
    border: 0;
    border-radius: .45rem;
    background: var(--ui-primary-soft);
    color: var(--ui-primary-dark);
    padding: .35rem .65rem;
    font-weight: 750;
}

.workspace-page :is(input, select, textarea)::placeholder {
    color: #8a7d77;
    opacity: 1;
}

.workspace-page :is(input, select, textarea):focus-visible {
    border-color: var(--ui-primary);
    outline: .1875rem solid color-mix(in srgb, var(--ui-primary) 22%, transparent);
    outline-offset: 0;
}

.workspace-page .ui-field {
    width: 100%;
    gap: var(--ui-space-1);
}

.workspace-page .ui-field > span:first-child {
    display: block;
    line-height: 1.35;
}

.workspace-page .ui-field > small {
    margin: 0;
    overflow-wrap: anywhere;
}

.workspace-page .admin-form,
.workspace-page .ui-card > form.admin-form {
    display: grid;
    padding: var(--ui-card-padding);
    gap: var(--ui-space-4);
}

.profile-readonly { display: grid; margin: 0; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--ui-space-3); }
.profile-readonly > div { min-width: 0; padding: var(--ui-space-3); border: 1px solid var(--ui-border); border-radius: var(--ui-radius-sm); background: var(--ui-surface-muted); }
.profile-readonly > div:last-child { grid-column: 1 / -1; }
.profile-readonly dt { color: var(--ui-text-muted); font-size: .58rem; font-weight: 700; }
.profile-readonly dd { margin: .3rem 0 0; font-size: .7rem; font-weight: 800; overflow-wrap: anywhere; }
@media (max-width: 42rem) { .profile-readonly { grid-template-columns: 1fr; } .profile-readonly > div:last-child { grid-column: auto; } }

.workspace-page .ui-card > form:not([class]),
.workspace-page .ui-card > form[class=''] {
    padding: var(--ui-card-padding);
}

.workspace-page :is(.admin-form, .finance-form, .custody-form, .remittance-form, .delivery-form) > .ui-button:last-child {
    justify-self: start;
}

.workspace-page .ui-card > .ui-alert {
    margin: var(--ui-card-padding);
}

.workspace-page .ui-card__header > div { min-width: 0; }
.workspace-page .ui-card__header p:last-child { margin: .35rem 0 0; color: var(--ui-text-muted); line-height: 1.45; }

.workspace-page .admin-user-case__access {
    display: grid;
    gap: var(--ui-space-3);
}

.workspace-page .admin-user-case__access :is(p, h3) { margin: 0; }
.workspace-page .admin-user-case__access form {
    display: grid;
    margin: 0;
    padding-top: var(--ui-space-3);
    gap: var(--ui-space-3);
    border-top: 1px solid var(--ui-border);
}

.workspace-page .report-register td form {
    display: grid;
    width: min(100%, 18rem);
    margin-top: var(--ui-space-2);
    gap: var(--ui-space-2);
}

.workspace-page .report-register td form .ui-button { width: 100%; }

.workspace-page :is(.ui-card__header, .ui-page-header, form, fieldset, article, section) > :first-child { margin-top: 0; }
.workspace-page :is(.ui-card__header, form, fieldset, article, section) > :last-child { margin-bottom: 0; }

@media (max-width: 42rem) {
    .workspace-page { --ui-card-padding: 1rem; }
    .workspace-content { padding: 1rem; }
    .workspace-content > section + section { margin-top: 1.125rem; }
    .workspace-page :is(input:not([type='checkbox']):not([type='radio']):not([type='hidden']), select, textarea) { font-size: 1rem; }
    .workspace-page :is(.admin-form, .finance-form, .custody-form, .remittance-form, .delivery-form) > .ui-button:last-child { width: 100%; justify-self: stretch; }
    .workspace-page .ui-card__header { min-height: auto; padding: 1rem; gap: .625rem; }
    .workspace-page .ui-card > .ui-alert { margin: 1rem; }
    .workspace-page .report-register td form { width: 100%; }
}

/* Priorité finale : les actions de catégorie et le registre gardent leur grille sur tous les écrans. */
.catalogue-category-list > article { grid-template-columns: auto minmax(0,1fr) auto auto auto; }
@media (max-width: 68.75rem) { .permanent-output__filters > form { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 42rem) {
    .permanent-output__filters > form { grid-template-columns: 1fr; }
    .catalogue-category-list > article { grid-template-columns: auto minmax(0,1fr) auto; }
    .catalogue-category-list > article form { grid-column: 2 / -1; }
}

.actor-stamp { display: inline-flex; min-width: 0; align-items: center; gap: .625rem; }
.actor-stamp__avatar, .confirm-dialog-actor > span { display: grid; width: 2.35rem; height: 2.35rem; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--ui-primary-soft); color: var(--ui-primary); font-weight: 850; }
.actor-stamp__identity { display: grid; min-width: 0; line-height: 1.25; }
.actor-stamp__identity small { color: var(--ui-text-muted); font-size: .72rem; }
.actor-stamp__identity strong { overflow: hidden; font-size: .86rem; text-overflow: ellipsis; white-space: nowrap; }
.actor-stamp__identity em { color: var(--ui-text-muted); font-size: .7rem; font-style: normal; }
.confirm-dialog-actor { display: flex; padding: .75rem; align-items: center; gap: .7rem; border: 1px solid var(--ui-border); border-radius: .75rem; background: var(--ui-surface-muted); }
.confirm-dialog-actor p { display: grid; margin: 0; }
.confirm-dialog-actor small { color: var(--ui-text-muted); }
.operation-signatures { display: flex; padding: .8rem 1rem; flex-wrap: wrap; gap: 1rem 1.5rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
@media (max-width: 42rem) { .operation-signatures { display: grid; } }

.capacity-summary { overflow: hidden; }
.capacity-summary__help { margin: 0; padding: .85rem var(--ui-card-padding); border-bottom: 1px solid var(--ui-border); color: var(--ui-text-muted); font-size: .86rem; }
.capacity-summary__grid { display: grid; padding: var(--ui-card-padding); grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.capacity-summary__card { display: grid; overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface-muted); }
.capacity-summary__card > header { display: flex; padding: 1rem; align-items: center; gap: .85rem; border-bottom: 1px solid var(--ui-border); background: var(--ui-surface); }
.capacity-summary__card > header div { display: grid; min-width: 0; }
.capacity-summary__card > header strong { color: var(--ui-text); font-size: 1.25rem; }
.capacity-summary__card > header small { color: var(--ui-text-muted); line-height: 1.35; }
.capacity-summary__bottle { display: grid; width: 2.5rem; color: var(--ui-primary); font-size: 1.35rem; place-items: end center; }
.capacity-summary__bottle--3 { transform: scale(.72); }
.capacity-summary__bottle--6 { transform: scale(.86); }
.capacity-summary__card dl { display: grid; margin: 0; padding: .8rem 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
.capacity-summary__card dl div { display: grid; padding: .65rem; gap: .15rem; border-radius: .65rem; background: var(--ui-surface); }
.capacity-summary__card dt { color: var(--ui-text-muted); font-size: .75rem; }
.capacity-summary__card dd { margin: 0; color: var(--ui-text); font-size: 1.2rem; font-weight: 850; }
.capacity-summary__card dl .is-full dd { color: var(--ui-primary); }
.capacity-summary__card dl .has-attention { background: var(--ui-warning-soft, #fff5dc); }
.capacity-summary__card dl .has-info { background: var(--ui-primary-soft); }
.capacity-summary__card > footer { display: flex; padding: .75rem 1rem; justify-content: space-between; align-items: center; border-top: 1px solid var(--ui-border); color: var(--ui-text-muted); font-size: .8rem; }
.capacity-summary__card > footer strong { color: var(--ui-text); font-size: 1rem; }
.capacity-summary__legend { display: flex; padding: 0 var(--ui-card-padding) var(--ui-card-padding); flex-wrap: wrap; gap: .5rem 1.25rem; color: var(--ui-text-muted); font-size: .75rem; }
.capacity-summary__legend span { display: inline-flex; align-items: center; gap: .4rem; }
.capacity-summary__legend i { width: .55rem; height: .55rem; border-radius: 50%; background: var(--ui-warning, #d98c00); }
.capacity-summary__legend i.is-customer { background: var(--ui-primary); }
.bottle-flow-help { overflow: hidden; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); background: var(--ui-surface); }
.bottle-flow-help > header { display: flex; padding: 1rem; align-items: center; gap: .75rem; border-bottom: 1px solid var(--ui-border); }
.bottle-flow-help > header > span { display: grid; width: 2rem; height: 2rem; flex: 0 0 2rem; place-items: center; border-radius: 50%; background: var(--ui-primary-soft); color: var(--ui-primary); font-weight: 900; }
.bottle-flow-help > header div { display: grid; }
.bottle-flow-help > header small { color: var(--ui-text-muted); }
.bottle-flow-help > div { display: grid; padding: 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.bottle-flow-help article { padding: 1rem; border: 1px solid var(--ui-border); border-radius: .75rem; background: var(--ui-surface-muted); }
.bottle-flow-help article p { margin: .4rem 0; color: var(--ui-text-muted); line-height: 1.5; }
.bottle-flow-help article small { color: var(--ui-primary); font-weight: 700; }
.controller-pool-opening { overflow: hidden; scroll-margin-top: 5rem; }
.controller-pool-opening__guide { display: grid; padding: var(--ui-card-padding); grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: .75rem; border-bottom: 1px solid var(--ui-border); }
.controller-pool-opening__guide article { display: flex; min-height: 4.5rem; padding: .85rem; align-items: center; gap: .7rem; border-radius: .75rem; background: var(--ui-surface-muted); }
.controller-pool-opening__guide article > span { display: grid; width: 2rem; height: 2rem; flex: 0 0 2rem; place-items: center; border-radius: 50%; background: var(--ui-primary); color: #fff; font-weight: 850; }
.controller-pool-opening__guide p { display: grid; margin: 0; }
.controller-pool-opening__guide small { color: var(--ui-text-muted); line-height: 1.4; }
.controller-pool-opening__guide > i { color: var(--ui-primary); font-style: normal; }
.controller-pool-opening__form, .controller-pool-correction form { display: grid; padding: var(--ui-card-padding); gap: 1rem; }
.controller-pool-opening__form fieldset, .controller-pool-correction fieldset { min-width: 0; margin: 0; padding: 1rem; border: 1px solid var(--ui-border); border-radius: var(--ui-radius); }
.controller-pool-opening__form legend, .controller-pool-correction legend { padding: 0 .4rem; font-weight: 800; }
.controller-pool-opening__form fieldset > div, .controller-pool-correction fieldset > div { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }
.controller-pool-opening__form > footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.controller-pool-opening__form > footer p { margin: 0; color: var(--ui-text-muted); }
.controller-pool-opening__current { display: grid; padding: var(--ui-card-padding); gap: 1rem; }
.controller-pool-opening__current > p { display: grid; margin: 0; }
.controller-pool-opening__current > p small { color: var(--ui-text-muted); }
.controller-pool-opening__current dl { display: grid; margin: 0; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }
.controller-pool-opening__current dl > div { padding: .85rem; border-radius: .7rem; background: var(--ui-surface-muted); }
.controller-pool-opening__current dt, .controller-pool-opening__current small { color: var(--ui-text-muted); }
.controller-pool-opening__current dd { margin: .25rem 0; font-weight: 850; }
.controller-pool-opening__rare { margin: 0; padding: 0 var(--ui-card-padding) var(--ui-card-padding); color: var(--ui-text-muted); }
.controller-pool-opening__rare small { color: var(--ui-text-muted); }
.controller-pool-correction { border-top: 1px solid var(--ui-border); }
.controller-pool-correction > summary { padding: 1rem var(--ui-card-padding); color: var(--ui-danger); cursor: pointer; font-weight: 800; }
@media (max-width: 62rem) { .capacity-summary__grid { grid-template-columns: 1fr; } }
@media (max-width: 42rem) {
    .capacity-summary__help { padding: .75rem 1rem; }
    .capacity-summary__grid { padding: 1rem; gap: .75rem; }
    .capacity-summary__card { grid-template-columns: minmax(0, 1fr); }
    .capacity-summary__legend { display: grid; padding: 0 1rem 1rem; }
    .workspace-help__label { display: none; }
    .workspace-help > summary { width: 2.75rem; padding: .4rem; justify-content: center; }
    .workspace-help__panel { position: fixed; top: 4.5rem; right: 1rem; left: 1rem; width: auto; max-height: calc(100vh - 5.5rem); }
    .bottle-flow-help > div { grid-template-columns: 1fr; }
    .controller-pool-opening__guide { grid-template-columns: 1fr; }
    .controller-pool-opening__guide > i { justify-self: center; transform: rotate(90deg); }
    .controller-pool-opening__form fieldset > div, .controller-pool-correction fieldset > div, .controller-pool-opening__current dl { grid-template-columns: 1fr; }
    .controller-pool-opening__form > footer { align-items: stretch; flex-direction: column; }
    .controller-pool-opening__form > footer .ui-button { width: 100%; }
}

/* Harmonisation professionnelle : lisibilité, densité et responsive. */
.workspace-page {
    --ui-readable-xs: .75rem;
    --ui-readable-sm: .8125rem;
    --ui-readable-md: .9375rem;
    --ui-readable-lg: 1.0625rem;
    --ui-content-width: 96rem;
}

.workspace-content {
    width: min(100%, var(--ui-content-width));
    margin-inline: auto;
}

.workspace-page :is(p, li, label, dt, dd, td, th, small, output) {
    overflow-wrap: anywhere;
}

.workspace-page :is(p, li, label, dd, td) {
    font-size: var(--ui-readable-sm);
}

.workspace-page :is(small, dt, th, .ui-eyebrow, .ui-badge) {
    font-size: var(--ui-readable-xs) !important;
    line-height: 1.4;
}

.workspace-page :is(.ui-field > span, legend, .ui-button, button, summary) {
    font-size: var(--ui-readable-sm);
}

.workspace-page :is(.ui-card__header h2, .ui-card__header h3, article h2, section h2) {
    font-size: var(--ui-readable-lg);
    line-height: 1.3;
}

.workspace-page .ui-page-header h1 {
    font-size: clamp(1.75rem, 3vw, 2.5rem);
    line-height: 1.12;
}

.workspace-page .ui-page-header__copy > p:last-child {
    max-width: 48rem;
    font-size: var(--ui-readable-md);
    line-height: 1.55;
}

.workspace-page :is(.ui-button, button, summary, .workspace-nav__link) {
    min-height: 2.75rem;
}

.workspace-page .workspace-nav__link {
    font-size: .875rem;
}

.workspace-page .workspace-nav__group,
.workspace-page .workspace-sidebar__label {
    font-size: var(--ui-readable-xs);
}

.workspace-page :is(.ui-card, .ui-alert, .ui-empty-state) {
    border-color: var(--ui-border);
}

.workspace-page .ui-card__header {
    padding: 1rem var(--ui-card-padding);
}

.workspace-page table {
    font-variant-numeric: tabular-nums;
}

.workspace-page table :is(th, td) {
    padding: .75rem;
    line-height: 1.45;
}

.workspace-page table th {
    letter-spacing: .035em;
}

.workspace-page .ui-badge {
    display: inline-flex;
    min-height: 1.75rem;
    padding: .3rem .6rem;
    align-items: center;
    white-space: normal;
}

.workspace-page :is(input, select, textarea)::placeholder {
    font-size: .875rem;
}

.admin-reports,
.admin-reports > *,
.report-analysis-grid,
.report-analysis-grid > *,
.report-series,
.report-series > div {
    min-width: 0;
    max-width: 100%;
}

.report-hub-tabs {
    width: 100%;
    max-width: 100%;
}

@media (max-width: 60rem) {
    .workspace-content {
        width: 100%;
    }

    .workspace-header {
        padding-inline: 1rem;
    }
}

@media (max-width: 42rem) {
    .workspace-page {
        --ui-readable-xs: .75rem;
        --ui-readable-sm: .875rem;
        --ui-readable-md: 1rem;
        --ui-readable-lg: 1.125rem;
    }

    .workspace-header {
        min-height: 4rem;
        gap: .625rem;
    }

    .workspace-header .workspace-user > div {
        display: none;
    }

    .workspace-page .ui-page-header {
        gap: 1rem;
    }

    .workspace-page .ui-page-header h1 {
        font-size: clamp(1.625rem, 8vw, 2rem);
    }

    .workspace-page .ui-page-header__copy > p:last-child {
        font-size: .9375rem;
    }

    .workspace-page :is(.ui-button, button, summary) {
        min-height: 2.75rem;
    }

    .workspace-page table :is(th, td) {
        font-size: .875rem;
    }

    .workspace-page .module-table-wrap {
        max-width: 100%;
    }

    .report-hub-tabs {
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
    }

    .report-series > div {
        width: 100%;
    }
}

@media (max-width: 24rem) {
    .workspace-content {
        padding-inline: .75rem;
    }

    .workspace-header {
        padding-inline: .75rem;
    }
}

/* Shell unique : le menu latéral cède la place dès la tablette, sans conflit avec app.css. */
.workspace-page .admin-sidebar.workspace-sidebar {
    width: var(--ui-sidebar-width);
    overflow-x: hidden;
    background: var(--ui-sidebar);
    color: #fff;
    transform: none;
}

.workspace-page.has-open-menu::before {
    z-index: 40;
}

.workspace-page .workspace-header { z-index: 45; }
.workspace-page .workspace-sidebar { z-index: 50; }

@media (max-width: 70rem) {
    .workspace-page {
        --ui-sidebar-width: min(19.5rem, calc(100vw - 2.5rem));
    }

    .workspace-page .workspace-main {
        margin-left: 0;
    }

    .workspace-page .admin-sidebar.workspace-sidebar {
        width: var(--ui-sidebar-width);
        padding-top: max(1rem, env(safe-area-inset-top));
        padding-bottom: max(1rem, env(safe-area-inset-bottom));
        padding-left: max(1rem, env(safe-area-inset-left));
        box-shadow: 1rem 0 2rem rgba(15, 23, 42, .28);
        transform: translateX(-110%);
        transition: transform .2s ease;
    }

    .workspace-page .admin-sidebar.workspace-sidebar.is-open {
        transform: translateX(0);
    }

    .workspace-page .workspace-header .mobile-menu-button {
        display: grid;
        min-width: 2.75rem;
        min-height: 2.75rem;
        place-items: center;
    }

    .workspace-page .workspace-sidebar__close {
        display: grid;
    }

    .workspace-page .workspace-header {
        padding-inline: max(1rem, env(safe-area-inset-right));
        padding-left: max(1rem, env(safe-area-inset-left));
    }

    .workspace-page .workspace-header__context > div {
        display: none;
    }

    .workspace-page .workspace-help__label {
        display: none;
    }

    .workspace-page .workspace-help > summary {
        width: 2.75rem;
        padding: .4rem;
        justify-content: center;
    }

    .workspace-page .workspace-content {
        width: 100%;
        padding: 1.15rem max(1rem, env(safe-area-inset-right)) 1.5rem max(1rem, env(safe-area-inset-left));
    }

    .workspace-page .ui-page-header {
        align-items: stretch;
        flex-direction: column;
    }

    .workspace-page .ui-page-header .ui-button {
        width: 100%;
    }

    .workspace-page .seller-quick-actions {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 42rem) {
    .workspace-page .sale-kind-tabs {
        display: grid;
        grid-template-columns: 1fr;
    }

    .workspace-page .sale-kind-tabs .ui-button,
    .workspace-page .ui-form-grid > .ui-button {
        width: 100%;
        justify-self: stretch;
    }

    .workspace-page .ui-form-grid {
        grid-template-columns: 1fr;
    }

    .workspace-page :is(.ui-table-wrap, .module-table-wrap, .report-register > div) {
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        -webkit-overflow-scrolling: touch;
    }

    .workspace-page .workspace-help__panel {
        position: fixed;
        top: 4.5rem;
        right: max(1rem, env(safe-area-inset-right));
        left: max(1rem, env(safe-area-inset-left));
        width: auto;
        max-height: calc(100dvh - 6rem);
    }
}

@media (prefers-reduced-motion: reduce) {
    .workspace-page .admin-sidebar.workspace-sidebar {
        transition: none;
    }
}

