/* Extracted from ecosystem.css — Ledger, pricing and reconcile operation controls. */
/* Load after ecosystem.css and before existing ecosystem feature sheets; original order preserved. */

    .led-strip { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:6px; }
    .led-strip-kpi {
        display:inline-flex; align-items:center; gap:6px; padding:6px 10px; border-radius:10px;
        background:var(--tg-theme-secondary-bg-color,#f1f1f1); font-size:12px; min-height:34px;
    }
    .led-strip-kpi b { font-size:15px; font-variant-numeric:tabular-nums; }
    .led-recon {
        display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:6px;
        margin:0; padding:6px 10px; border-radius:10px;
        background:var(--tg-theme-secondary-bg-color,#f2f2f2); min-width:0;
    }
    .led-recon-body { min-width:0; display:flex; flex-direction:column; gap:1px; }
    .led-recon.ok { border-left:3px solid var(--pos,#1a8d3e); }
    .led-recon.bad { border-left:3px solid var(--neg,#d11); }
    .led-recon-main { font-size:13px; font-weight:700; font-variant-numeric:tabular-nums; }
    .led-recon-meta { font-size:11px; opacity:.78; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .led-recon-ok { font-size:13px; font-weight:700; color:var(--pos,#1a8d3e); }
    .led-recon-btn {
        flex:0 0 auto; align-self:center; min-height:28px; padding:4px 10px;
        font-size:11px; white-space:nowrap; border-radius:8px;
    }
    .led-recon.compact { padding:4px 7px; }
    .led-recon.compact .led-recon-main { font-size:12px; }
    .led-recon.compact .led-recon-meta { font-size:10.5px; }
    .led-recon.standalone { width:100%; box-sizing:border-box; }
    body.pro.focus-workspace #dash[data-mode="compact"],
    body[data-ledframe="led-reconcile"] #dash[data-mode="compact"] { display:none; }
    body[data-ledframe="led-reconcile"] .led-ctx { margin-bottom:4px; font-size:11px; }
    body[data-ledframe="led-reconcile"] .led-grps,
    body[data-ledframe="led-reconcile"] .led-shs { display:none; }
    .led-focus-tabs {
        display:flex; align-items:center; gap:4px; flex-wrap:nowrap; overflow-x:auto;
        -webkit-overflow-scrolling:touch; padding-bottom:2px; margin-bottom:3px;
    }
    .led-focus-tabs::-webkit-scrollbar { display:none; }
    .led-focus-tabs .fin,
    .led-focus-tabs .led-sep { margin:0 2px; opacity:.55; font-size:11px; overflow:visible; }
    .led-focus-tabs:focus-visible { outline:2px solid var(--tg-theme-button-color,#3390ec); outline-offset:2px; }
    .led-focus-tabs .rk { min-height:26px; padding:3px 8px; font-size:11px; white-space:nowrap; }
    .led-focus-tabs .grp:not(.active) {
        border-color:transparent; background:transparent; opacity:.72;
    }
    .led-focus-tabs .grp.active { box-shadow:inset 0 0 0 1px rgba(51,144,236,.22); }
    .led-focus-tabs [data-sheet].active { font-weight:700; }
    .led-top-actions { display:flex; gap:6px; flex-wrap:wrap; margin-top:6px; }
    .led-top-actions .rk { min-height:32px; padding:6px 10px; font-size:12px; }
    .set-preset-row { display:flex; gap:6px; flex-wrap:wrap; margin:6px 0 2px; }
    .set-preset-row .rk { min-height:32px; padding:6px 10px; font-size:12px; }
    .pr-note {
        font-size:12px; line-height:1.45; padding:8px 9px; border-radius:10px;
        background:var(--tg-theme-secondary-bg-color,#f3f3f3); color:var(--tg-theme-text-color,#222);
    }
    .pr-empty {
        text-align:left; white-space:normal; line-height:1.45;
        padding:12px !important; border:1px dashed var(--tg-theme-hint-color,#cfcfcf);
        border-radius:10px; background:var(--tg-theme-secondary-bg-color,#f7f7f7);
    }
    .pr-market-context {
        margin:6px 0; overflow:hidden; border:1px solid var(--app-border);
        border-radius:13px; background:var(--app-surface); box-shadow:0 4px 18px rgba(18,31,53,.035);
    }
    .pr-market-context-main {
        display:grid; grid-template-columns:minmax(150px,1fr) minmax(190px,260px) auto;
        align-items:end; gap:8px; padding:9px;
    }
    .pr-market-identity { display:flex; flex-direction:column; min-width:0; }
    .pr-market-identity > span, .pr-market-picker > span, .pr-market-editor label > span,
    .pr-market-instruments label > span, .pr-action-primary label > span {
        color:var(--tg-theme-hint-color,#68717d); font-size:9px; font-weight:750;
        letter-spacing:.04em; text-transform:uppercase;
    }
    .pr-market-identity b {
        margin:2px 0 1px; overflow:hidden; color:var(--tg-theme-text-color,#111);
        font-size:14px; text-overflow:ellipsis; white-space:nowrap;
    }
    .pr-market-identity small { color:var(--tg-theme-hint-color,#68717d); font-size:9.5px; }
    .pr-market-picker, .pr-market-editor label, .pr-market-instruments label,
    .pr-action-primary label { display:flex; flex-direction:column; gap:3px; min-width:0; }
    .pr-market-picker select, .pr-market-editor input, .pr-market-instruments select {
        width:100%; max-width:none; min-height:34px; padding:4px 8px; box-sizing:border-box;
        border:1px solid var(--app-border); border-radius:9px;
        color:var(--tg-theme-text-color,#111); background:var(--tg-theme-bg-color,#fff);
    }
    .pr-market-manage { min-height:34px; padding:5px 9px; white-space:nowrap; }
    .pr-market-rule {
        display:flex; align-items:flex-start; gap:6px; padding:6px 9px;
        border-top:1px solid var(--app-border); color:var(--tg-theme-hint-color,#68717d);
        background:var(--app-surface-soft); font-size:10px; line-height:1.35;
    }
    .pr-market-editor {
        display:grid; grid-template-columns:minmax(180px,1fr) auto; align-items:end; gap:8px;
        padding:9px; border-top:1px solid var(--app-border);
    }
    .pr-market-editor[hidden] { display:none; }
    .pr-market-editor-actions { display:flex; align-items:center; gap:5px; flex-wrap:wrap; }
    .pr-market-editor-actions .rk, .pr-market-editor-actions .del { min-height:34px; padding:5px 9px; }
    .pr-market-instruments {
        display:grid; grid-template-columns:minmax(210px,340px) minmax(0,1fr);
        align-items:end; gap:8px; margin:6px 0; padding:8px 9px;
        border:1px dashed var(--app-border-strong); border-radius:11px;
    }
    .pr-market-instruments > span {
        align-self:center; color:var(--tg-theme-hint-color,#68717d); font-size:10px; line-height:1.35;
    }
    .pr-action-bar {
        display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:7px;
        margin:6px 0; padding:7px; border:1px solid var(--app-border);
        border-radius:12px; background:var(--app-surface);
    }
    .pr-action-primary { display:flex; align-items:end; gap:5px; }
    .pr-action-primary input { width:72px; min-height:32px; padding:4px 7px; box-sizing:border-box; }
    .pr-action-primary .rk { min-height:32px; }
    .pr-action-secondary { display:flex; justify-content:flex-end; gap:5px; flex-wrap:wrap; }
    .pr-action-bar > p {
        grid-column:1/-1; margin:0; color:var(--tg-theme-hint-color,#68717d);
        font-size:9.5px; line-height:1.35;
    }
    .pr-hint { opacity:.65; font-size:11px; flex-basis:100%; line-height:1.35; }
    .pr-action-bar .rk { min-height:32px; padding:6px 10px; font-size:12px; }
    @media (max-width:760px) {
        .pr-market-context-main { grid-template-columns:1fr auto; align-items:end; }
        .pr-market-identity { grid-column:1/-1; }
        .pr-market-picker { min-width:0; }
        .pr-market-picker select, .pr-market-manage, .pr-market-editor input,
        .pr-market-editor-actions .rk, .pr-market-editor-actions .del,
        .pr-market-instruments select { min-height:44px; }
        .pr-market-editor, .pr-market-instruments { grid-template-columns:1fr; }
        .pr-market-editor-actions { display:grid; grid-template-columns:1fr 1fr; }
        .pr-market-editor-actions .del { grid-column:1/-1; min-height:44px; }
        .pr-action-bar { grid-template-columns:1fr; }
        .pr-action-primary { display:grid; grid-template-columns:minmax(0,1fr) auto; }
        .pr-action-primary label { min-width:0; }
        .pr-action-primary input { width:100%; min-height:40px; }
        .pr-action-primary .rk { min-height:40px; }
        .pr-action-secondary {
            display:grid; grid-template-columns:1fr 1fr; justify-content:stretch;
        }
        .pr-action-secondary .rk { min-height:40px; }
        .pr-action-bar > p { grid-column:auto; }
    }
    .svc-actions { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; align-items:center; }
    .svc-actions-safe, .svc-actions-danger { display:flex; gap:6px; flex-wrap:wrap; }
    .svc-actions-danger { padding-left:6px; border-left:2px solid var(--neg,#d11); }
    .svc-actions .btn { min-height:30px; padding:5px 9px; }
    .svc-actions .svc-del { box-shadow: inset 0 0 0 1px rgba(209,17,17,.35); }
    .rq-acts-wrap { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; align-items:flex-start; }
    .rq-act { min-height:30px; padding:5px 9px; font-size:12px; }
    .rq-act-danger { border-left:3px solid var(--neg,#d11); }
    .rq-bulk.rq-act-danger { min-height:34px; font-weight:600; }
    .rq-tools-strip {
        display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:6px;
        padding:6px 8px; border-radius:10px;
        background:var(--tg-theme-secondary-bg-color,#f2f2f2);
    }
    body[data-ledframe="led-reconcile"] .rq-tools-strip { margin-top:3px; padding:6px 7px; }
    .rq-bulk-group, .rq-page-group {
        display:flex; align-items:center; gap:6px; min-width:0; flex-wrap:wrap;
    }
    .rq-bulk-group { flex:1 1 300px; }
    .rq-page-group { flex:0 1 auto; margin-left:auto; }
    .rq-tools-strip .fin {
        margin-top:0; white-space:normal; overflow:visible;
        overflow-wrap:break-word; word-break:normal;
    }
    .rq-bulk-note { flex:1 1 150px; line-height:1.3; }
    .rq-page-range { white-space:nowrap !important; }
    .rq-tools-strip .rk { min-height:24px; padding:2px 7px; font-size:11px; }
    .rq-tools-strip .rq-pg-size.active { font-weight:700; }
    .rq-tools-strip .rq-pg-nav { min-width:26px; padding:2px 6px; }
    .rq-tools-strip .rq-bulk { min-height:24px; padding:2px 8px; font-size:11px; white-space:nowrap; }
    .rq-tools-strip .rq-tools-sep { margin-left:0; white-space:nowrap; }
    #grid.reconcile-grid td.ro:not(.fin-flow), #grid.transfers-grid td.ro:not(.fin-flow) {
        color:var(--tg-theme-text-color,#222); opacity:.9;
    }
    #grid.reconcile-grid td.fin-flow, #grid.transfers-grid td.fin-flow { opacity:1; }
    #grid.reconcile-grid > thead > tr > th,
    #grid.reconcile-grid > tbody > tr > td,
    #grid.transfers-grid > thead > tr > th,
    #grid.transfers-grid > tbody > tr > td { padding:3px 5px; font-size:10.5px; line-height:1.18; }
    #grid.reconcile-grid > thead > tr > th,
    #grid.transfers-grid > thead > tr > th { font-size:10px; }
    #grid.reconcile-grid td .lnk, #grid.transfers-grid td .lnk { opacity:.75; }
    #grid.reconcile-grid > thead > tr > th.led-th,
    #grid.transfers-grid > thead > tr > th.led-th {
        background:rgba(51,144,236,.10); color:var(--tg-theme-text-color,#1f2328);
        font-weight:650; border-bottom:1px solid rgba(51,144,236,.18);
    }
    #grid.reconcile-grid > thead > tr > th.led-freeze-1,
    #grid.reconcile-grid > thead > tr > th.led-freeze-2,
    #grid.transfers-grid > thead > tr > th.led-freeze-1,
    #grid.transfers-grid > thead > tr > th.led-freeze-2 {
        background:rgba(51,144,236,.13); z-index:4;
    }
    #grid.reconcile-grid td.acts { width:1%; white-space:nowrap; }
    #grid.reconcile-grid .rq-acts-wrap {
        display:inline-flex; flex-wrap:nowrap; justify-content:flex-end; align-items:center; gap:2px;
    }
    #grid.reconcile-grid .rq-act {
        min-height:20px; min-width:20px; padding:1px 4px; font-size:9.5px; line-height:1;
        border-radius:5px;
    }
    #grid.reconcile-grid .rq-link-wrap { display:inline-flex; gap:2px; align-items:center; }
    #grid.reconcile-grid .rq-num {
        width:3.4ch !important; font-size:10px; padding:1px 2px; border-radius:4px;
    }
    #grid.reconcile-grid .rq-sug, #grid.reconcile-grid .rq-cli { min-width:20px; padding:1px 3px; }
    #grid.reconcile-grid .rq-arch { box-shadow: inset 0 0 0 1px rgba(209,17,17,.35); }
    .cash-ops-main, .cash-ops-secondary { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
    .cash-ops-main .rk, .cash-ops-secondary .rk, .cash-ops-secondary .del {
        min-height:32px; padding:6px 10px; font-size:12px;
    }
    .cash-ops-secondary { opacity:.92; }
