.monthly-panel{margin-top:6px}.monthly-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px 12px}.monthly-header h2{font-size:17px;color:#35547d;margin:0 0 8px}.monthly-header p{font-size:12px;color:#8397b4;margin:0}.monthly-actions{display:flex;gap:8px}.monthly-actions button{font-size:12px}.monthly-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 24px 16px;font-size:11px;color:#8598b3}.monthly-toolbar input{width:240px;font-size:12px}.monthly-toolbar .quiet{font-size:18px}.monthly-scroll{overflow:auto;max-height:70vh;scrollbar-gutter:stable;border-top:1px solid #e4ebf7;overscroll-behavior-x:contain}.monthly-table{table-layout:fixed;width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.monthly-table th,.monthly-table td{padding:18px 14px;border-bottom:1px solid #e9eef7}.monthly-table th{position:sticky;top:0;z-index:2;background:#f5f8ff;font-size:12px;color:#5f7da7;font-weight:500;white-space:normal;height:82px}.monthly-table th span,.monthly-table th small{display:block;font-size:10px;color:#97a8c1;margin:4px 0}.monthly-table th strong{font-size:16px;color:#456994;font-weight:600}.monthly-table td{font-size:13px;background:white;font-variant-numeric:tabular-nums;height:116px}.monthly-table .monthly-product-col{position:sticky;left:0;z-index:3;width:240px;min-width:240px;max-width:240px;border-right:1px solid #e0e9f9;box-shadow:5px 0 10px #234d8020;white-space:normal}.monthly-table th.monthly-product-col{z-index:5;background:#f1f6ff}.monthly-product-col>strong{display:block;font-size:13px;color:#345578;line-height:1.7}.monthly-product-col .subline{font-size:10px;line-height:1.8;overflow-wrap:anywhere}.monthly-value-col{width:107px;min-width:107px;text-align:right}.monthly-stock-col{width:160px;min-width:160px}.monthly-recent-col{width:150px;min-width:150px}.monthly-operation-col{width:170px;min-width:170px}.monthly-table .monthly-quantity{text-align:right}.monthly-number{padding:7px 0 7px 8px;min-width:50px;font-size:14px;border:0;background:transparent;color:#3f6089}.monthly-number:hover{background:#eaf2ff;color:#246ddd}.monthly-number i{display:inline-block;width:5px;height:5px;background:#e6a44b;border-radius:50%;margin-left:5px;vertical-align:middle}.monthly-unavailable{color:#bcc7d7}.monthly-unavailable small{display:block;font-size:9px;color:#a9b5c7;margin-top:7px}.monthly-stock-number{font-size:17px;color:#326abe;font-weight:600}.monthly-stock-number small{font-size:10px;color:#91a3bd;font-weight:400}.monthly-recent-number{font-size:15px;color:#456c9e;font-weight:500}.monthly-table .subline{font-size:10px;white-space:normal;line-height:1.9}.monthly-compare-button{padding:7px 10px;font-size:11px;color:#386fc3;border-color:#d4e2fa;background:#f7faff}.monthly-table td:last-child>.link{display:block;margin:5px -6px 0;font-size:10px}.monthly-selection-total{display:block;margin-top:9px;font-size:14px;color:#347198;font-weight:600}.monthly-footer{display:flex;justify-content:space-between;gap:12px;padding:14px 24px;font-size:10px;line-height:1.8;color:#91a3bd}.monthly-progress{display:flex;gap:12px;align-items:center;padding:12px 24px;background:#f3f7ff;font-size:12px;color:#6083b2}.monthly-explanation{margin:18px 2px;color:#8498b4;font-size:11px;line-height:1.9}.monthly-explanation summary{cursor:pointer}.monthly-table tbody tr.warning-urgent>td{background:#fff1f3;border-bottom-color:#f3dce2}.monthly-table tbody tr.warning-urgent:hover>td{background:#ffe9ee}.monthly-urgent-tag{display:inline-block;margin:3px 0;font-size:9px;color:#c94a63;background:#ffe2e8;border-radius:4px;padding:2px 5px}.monthly-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.monthly-month-grid label{display:flex;flex-direction:row;gap:10px;align-items:center;padding:12px 10px;border:1px solid #e2eafa;border-radius:8px;cursor:pointer}.monthly-month-grid label:has(input:checked){border-color:#84adf1;background:#f0f6ff}.monthly-month-grid strong,.monthly-month-grid small{display:block;font-size:12px}.monthly-month-grid small{font-size:10px;margin-top:5px;color:#95a4ba}.monthly-compare-shortcuts{display:flex;gap:6px;flex-wrap:wrap}.monthly-compare-shortcuts button{font-size:11px;padding:6px 10px}.monthly-compare-result{background:#f4f8ff;border-radius:8px;padding:18px;color:#6382ae}.monthly-compare-result>span{display:block;font-size:12px}.monthly-compare-result>strong{display:block;font-size:32px;color:#2c68bb;margin:8px 0}.monthly-compare-result small{display:block;color:#b07d34;font-size:11px;line-height:1.8}.monthly-detail-summary{display:flex;align-items:center;gap:20px;padding:0 0 18px;color:#7390b6;font-size:12px}.monthly-detail-summary strong{font-size:26px;color:#346ebc}.monthly-detail-scroll{max-height:360px;overflow:auto;border:1px solid #e4ebf8;border-radius:7px}.monthly-originals{font-size:11px;color:#7890b1;margin:15px 0}.monthly-originals summary{cursor:pointer}.monthly-originals p{line-height:1.8;border-bottom:1px solid #eef2f8;padding:8px 0;overflow-wrap:anywhere}@media(max-width:760px){.monthly-header{padding:18px 14px 10px;align-items:flex-start;flex-direction:column}.monthly-toolbar{padding:8px 14px 12px;gap:8px}.monthly-toolbar input{width:100%}.monthly-table .monthly-product-col{width:180px;min-width:180px;max-width:180px;padding:14px 10px}.monthly-table th,.monthly-table td{padding:14px 10px}.monthly-footer{flex-direction:column;padding:12px 14px}.monthly-month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-detail-summary{flex-wrap:wrap;gap:10px}.monthly-actions{flex-wrap:wrap}.monthly-scroll{max-height:65vh}}

/* Compact ledger: one frozen product column and three frozen comparison columns. */
.monthly-table{--product-width:200px;--stock-width:140px;--recent-width:106px;--operation-width:156px}
.monthly-table th,.monthly-table td{padding:7px 12px}
.monthly-table th{height:42px;white-space:nowrap;font-size:11px}
.monthly-table td{height:54px;font-size:12px}
.monthly-table .monthly-product-col{width:var(--product-width);min-width:var(--product-width);max-width:var(--product-width);padding:7px 12px}
.monthly-product-name{display:block;text-align:left;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;line-height:22px;color:#345578;border:0;background:transparent;padding:3px 0}
.monthly-product-name:hover{background:transparent;color:#246ddd}
.monthly-value-col{width:92px;min-width:92px;font-weight:500}
.monthly-table .monthly-stock-col,.monthly-table .monthly-recent-col,.monthly-table .monthly-operation-col{position:sticky;z-index:3;background:#fbfcff;white-space:normal}
.monthly-table .monthly-stock-col{right:calc(var(--recent-width) + var(--operation-width));width:var(--stock-width);min-width:var(--stock-width);max-width:var(--stock-width);border-left:1px solid #dce7f8;box-shadow:-5px 0 10px #234d8010}
.monthly-table .monthly-recent-col{right:var(--operation-width);width:var(--recent-width);min-width:var(--recent-width);max-width:var(--recent-width)}
.monthly-table .monthly-operation-col{right:0;width:var(--operation-width);min-width:var(--operation-width);max-width:var(--operation-width)}
.monthly-table th.monthly-stock-col,.monthly-table th.monthly-recent-col,.monthly-table th.monthly-operation-col{z-index:5;background:#eef4ff;white-space:nowrap}
.monthly-table th.monthly-product-col{z-index:6}
.monthly-number{font-size:12px;padding:3px 0 3px 6px;line-height:20px}
.monthly-stock-number{font-size:14px;line-height:20px}.monthly-recent-number{font-size:13px}.monthly-table .subline{font-size:10px;line-height:15px}
.monthly-row-actions{display:flex;align-items:center;gap:3px;white-space:nowrap}
.monthly-compare-button{padding:4px 7px;font-size:11px;line-height:18px}
.monthly-row-actions .link{font-size:10px;padding:4px}
.monthly-selection-total{margin-top:2px;font-size:11px;line-height:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.monthly-selection-total small{font-size:9px;font-weight:400;color:#8b9fbc}
.monthly-table tr.warning-urgent .monthly-product-name{color:#ad3c54}
#monthly-product-tooltip{position:fixed;z-index:100;max-width:min(340px,calc(100vw - 16px));padding:15px 17px;border:1px solid #dce7f8;border-radius:9px;background:#fff;box-shadow:0 10px 36px #243c6729;pointer-events:none;font-size:12px;color:#577395}
#monthly-product-tooltip>strong{display:block;line-height:1.7;color:#2e527f;margin-bottom:10px}
#monthly-product-tooltip dl{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px 12px;margin:0;font-size:11px}
#monthly-product-tooltip dt{color:#92a3bb}#monthly-product-tooltip dd{margin:0;overflow-wrap:anywhere}#monthly-product-tooltip p{font-size:11px;line-height:1.7;margin-bottom:0}
@media(max-width:760px){.monthly-table{--product-width:88px;--stock-width:72px;--recent-width:58px;--operation-width:86px}.monthly-table th,.monthly-table td,.monthly-table .monthly-product-col{padding:5px}.monthly-table th{height:38px;font-size:9px}.monthly-table td{height:50px}.monthly-product-name{font-size:10px}.monthly-stock-number{font-size:12px}.monthly-stock-number small{font-size:8px}.monthly-recent-number{font-size:11px}.monthly-value-col{width:76px;min-width:76px}.monthly-row-actions{gap:0}.monthly-compare-button{font-size:9px;padding:3px}.monthly-row-actions .link{font-size:9px;padding:3px}.monthly-table .subline{font-size:8px}.monthly-selection-total{font-size:9px}.monthly-table th.monthly-stock-col{white-space:normal;line-height:1.5}}

.monthly-table tbody tr.warning-general>td{background:#fffaf0;border-bottom-color:#f3e8cf}
.monthly-table tbody tr.warning-general:hover>td{background:#fff3d9}
.monthly-table tr.warning-general .monthly-product-name{color:#a67b2e}

.monthly-table .available-negative{color:#c8445d;font-weight:600}
