/* Scoped presentation only; readiness and closure calculations remain backend-owned. */
#dataOperationsPanelReadiness { min-width:0; max-width:100%; grid-template-columns:minmax(0,1fr); gap:12px; }
#dataOperationsPanelReadiness > * { min-width:0; max-width:100%; }
.readiness-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.readiness-heading h3,.readiness-heading p { margin:0 0 6px; }
.readiness-heading p,.readiness-muted { color:var(--text-muted); font-size:.9rem; }
.readiness-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:10px; padding:10px; margin:0; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
.readiness-toolbar label { display:grid; gap:6px; min-width:150px; max-width:100%; }
.readiness-toolbar input,.readiness-toolbar select { min-height:40px; min-width:0; width:100%; max-width:100%; border:1px solid var(--border); border-radius:8px; padding:8px 12px; background:var(--surface); color:var(--text); font:inherit; }
.readiness-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0; }
.readiness-card { padding:11px 12px; border:1px solid var(--border); border-radius:12px; background:var(--surface); min-width:0; overflow-wrap:anywhere; }
.readiness-card header { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.readiness-card h4,.readiness-card header h4 { margin:0; }
.readiness-card p { color:var(--text-secondary); margin:4px 0 0; line-height:1.4; font-size:.82rem; }
.readiness-card strong { display:flex; align-items:center; gap:8px; font-size:1.1rem; margin-block:5px; flex-wrap:wrap; }
.readiness-card strong small { font-weight:400; font-size:.78rem; color:var(--text-muted); }
.readiness-badge { display:inline-flex; align-items:center; width:max-content; max-width:100%; min-height:22px; padding:2px 7px; border-radius:999px; background:var(--surface-subtle); border:1px solid var(--border); font-size:.74rem; font-weight:650; line-height:1.2; white-space:normal; }
.readiness-badge[data-state="READY"],.readiness-badge[data-state="COMPLETE"],.readiness-badge[data-state="CLOSED_FINAL"],.readiness-badge[data-state="COMPLETE_WITH_CONFIRMED_ZERO"] { border-color:var(--success,#278264); }
.readiness-badge[data-state="BLOCKING"],.readiness-badge[data-state="NEEDS_DATA"],.readiness-badge[data-state="NOT_READY"],.readiness-badge[data-state="HAS_GAPS"] { border-color:var(--warning,#b47c25); }
.readiness-section { margin-block:4px; min-width:0; }
.readiness-section > h4 { margin-block:4px 12px; }
.readiness-table-wrap { overflow:auto; max-width:100%; max-height:72vh; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
.readiness-table { width:100%; min-width:820px; table-layout:fixed; border-collapse:collapse; text-align:start; }
.readiness-col-branch { width:15%; }
.readiness-col-sales { width:22%; }
.readiness-col-expenses { width:18%; }
.readiness-col-stock { width:18%; }
.readiness-col-action { width:15%; }
.readiness-col-closure { width:12%; }
.readiness-table th,.readiness-table td { min-width:0; padding:6px 8px; border-block-end:1px solid var(--border); text-align:start; vertical-align:middle; }
.readiness-table thead th { position:sticky; top:0; z-index:3; height:38px; padding-block:7px; background:var(--surface-subtle); color:var(--text-secondary); font-size:.79rem; font-weight:700; line-height:1.25; }
.readiness-table tbody th { background:var(--surface); font-weight:650; }
.readiness-main-row { height:auto; }
.readiness-main-row:hover > th,.readiness-main-row:hover > td { background:var(--surface-subtle); }
.readiness-cell { display:grid; justify-items:start; align-content:center; gap:3px; min-width:0; }
.readiness-cell-primary { display:block; max-width:100%; overflow-wrap:anywhere; color:var(--text); font-size:.92rem; font-weight:700; font-variant-numeric:tabular-nums; line-height:1.35; }
.readiness-main-row td:nth-child(2) .readiness-cell-primary,.readiness-main-row td:nth-child(3) .readiness-cell-primary { font-size:.92rem; }
.readiness-main-row td:last-child .readiness-cell-primary { color:var(--text-secondary); font-size:.76rem; font-weight:650; line-height:1.35; }
.readiness-cell-meta { display:block; max-width:100%; margin:0; overflow-wrap:anywhere; color:var(--text-muted); font-size:.72rem; line-height:1.35; }
.readiness-ok { color:var(--success,#278264); font-weight:800; }
.readiness-expand { display:flex; align-items:center; justify-content:flex-start; width:100%; gap:8px; border:0; padding:6px 0; background:transparent; color:inherit; font:inherit; font-weight:700; line-height:1.45; text-align:start; cursor:pointer; }
.readiness-chevron { flex:0 0 auto; color:var(--text-muted); font-size:.8rem; transition:transform .16s ease; }
.readiness-expand[aria-expanded="true"] > .readiness-chevron { transform:rotate(180deg); }
.readiness-cell-action { gap:8px; }
.readiness-inline-action { display:inline-flex; align-items:center; justify-content:flex-start; gap:6px; max-width:100%; border:0; border-block-end:1px solid currentColor; padding:2px 0; background:transparent; color:var(--primary); font:inherit; font-size:.79rem; font-weight:700; line-height:1.35; text-align:start; cursor:pointer; }
.readiness-inline-action:hover { border-block-end-color:transparent; }
.readiness-details > td { padding:0; background:var(--surface-subtle); }
.readiness-details-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:12px 14px; white-space:normal; font-size:.85rem; }
.readiness-details-grid section { min-width:0; padding-inline:4px; }
.readiness-details-grid h4 { margin:0 0 12px; }
.readiness-details-grid p { margin-block:6px; overflow-wrap:anywhere; }
.readiness-details-grid ul { padding-inline-start:18px; }
.readiness-zero-list { margin:0; }
.readiness-zero-list div { display:flex; justify-content:space-between; gap:8px; margin-block:6px; }
.readiness-zero-list dd { margin:0; }
.readiness-technical { margin:0 20px 18px; padding:10px; border-block-start:1px solid var(--border); color:var(--text-muted); }
.readiness-fold { border:1px solid var(--border); border-radius:12px; margin-block:12px; background:var(--surface); overflow:hidden; }
.readiness-fold > summary { padding:16px; cursor:pointer; }
.readiness-fold > summary span { margin-inline-start:16px; color:var(--text-muted); font-size:.84rem; }
.readiness-fold > div { padding:0 16px 16px; }
.readiness-action-row,.readiness-closure-row { display:flex; gap:16px; align-items:center; justify-content:space-between; padding:12px 0; border-block-end:1px solid var(--border); }
.readiness-action-row:last-child,.readiness-closure-row:last-child { border:0; }
.readiness-action-row small { display:block; margin-block-start:4px; color:var(--text-muted); }
.readiness-report-row { display:grid; grid-template-columns:minmax(130px,1fr) minmax(90px,.7fr) minmax(180px,2fr) auto; align-items:center; gap:16px; padding:12px 0; border-block-end:1px solid var(--border); }
.readiness-report-row p,.readiness-closure-row span { color:var(--text-muted); font-size:.85rem; }
.readiness-report-row .readiness-badge { justify-self:start; }
[data-readiness-status-message]:empty { display:none; }

@media(max-width:700px) {
  .readiness-cards { grid-template-columns:1fr; gap:8px; }
  .readiness-toolbar label { flex:1 1 140px; min-width:0; }
  .readiness-heading { align-items:start; flex-direction:column; gap:6px; }
  .readiness-details-grid { grid-template-columns:repeat(2,minmax(0,1fr)); padding:16px; }
  .readiness-table { min-width:820px; }
  .readiness-table th:first-child { position:sticky; inset-inline-start:0; z-index:1; box-shadow:1px 0 0 var(--border); }
  .readiness-table th:first-child button { max-width:135px; }
  .readiness-fold > summary span { display:block; margin:6px 0 0; }
  .readiness-report-row { grid-template-columns:1fr auto; gap:8px; }
  .readiness-report-row p { grid-column:1 / -1; margin:0; }
  .readiness-action-row,.readiness-closure-row { flex-wrap:wrap; }
  .readiness-next button { max-width:100%; }
}

.readiness-main-row:nth-of-type(4n+3) > th, .readiness-main-row:nth-of-type(4n+3) > td {background:var(--surface-subtle);}
.readiness-table-wrap:focus-visible {outline:2px solid var(--primary); outline-offset:2px;}
