/* 4.3.145 compact density for internal pages (reference: TS system). Loaded last; remove this file to roll back. */
:root{--es-footer-height:26px}
.es-registration-footer{padding:3px 0!important;line-height:20px!important}
.main-content{padding:6px 10px!important}
.main-content>div{padding-bottom:2px!important}
.main-content .page-heading,.main-content .dashboard-heading{margin-bottom:4px!important;min-height:0!important}
.main-content .page-heading h2,.main-content .dashboard-heading h2{font-size:18px!important;line-height:24px!important;margin:0!important}
.main-content .card{padding:8px!important;margin-bottom:6px!important}
.main-content .card h3,.main-content .dense-section-title h3{margin-top:0!important;margin-bottom:4px!important;font-size:14px!important}
/* Tables: ~28px rows like the TS system. */
.main-content table th{padding-top:3px!important;padding-bottom:3px!important}
.main-content table td{padding-top:2px!important;padding-bottom:2px!important}
.main-content .schedule-sheet th,.main-content .schedule-sheet td,.main-content .internal-ledger td{height:28px!important}
.main-content .internal-ledger th{height:26px!important}
.main-content table input:not([type=checkbox]):not([type=radio]),.main-content table select{height:22px!important;min-height:22px!important;padding-top:0!important;padding-bottom:0!important}
.main-content table .btn{min-height:22px!important;padding-top:1px!important;padding-bottom:1px!important;line-height:18px!important}
/* Filter chips. */
.main-content .filter-chip,.main-content .schedule-filter-level>button{height:22px!important;min-height:22px!important;padding:0 9px!important;font-size:11px!important;line-height:20px!important}
.main-content .capacity-adjust-history>*{padding-top:3px!important;padding-bottom:3px!important;margin:0!important}
:root:root{--es-footer-height:26px}
/* 進捗看板: filter lines flow side by side instead of one per row. */
.main-content *:has(> .progress-filter-line){display:flex!important;flex-wrap:wrap;align-items:center;gap:4px 18px}
.main-content .progress-filter-line{margin-top:0!important;gap:4px!important}
.main-content .progress-filter-btn{padding:1px 8px!important;font-size:11px!important;min-height:22px!important}
/* Row action buttons stay on one line where they fit. */
.main-content table td .btn{font-size:11px!important;padding-left:5px!important;padding-right:5px!important}
/* Action columns: buttons on one line so each case is a single ~30px row. */
.main-content .progress-board-table td:last-child,.main-content .formal-monthly-table td.row-actions{white-space:nowrap!important}
.main-content .formal-monthly-table th:last-child{width:24%!important}
.main-content .formal-monthly-table .row-actions .btn{margin-right:2px!important}
/* 4.3.146: wide tables size columns by content; when the screen is narrower they scroll sideways instead of clipping text. */
.main-content .progress-board-scroll,.main-content .personnel-table-scroll{overflow-x:auto!important}
.main-content .progress-board-table,.main-content .personnel-table{table-layout:auto!important;width:max-content!important;min-width:100%!important;max-width:none!important}
.main-content .progress-board-table th,.main-content .progress-board-table td,.main-content .personnel-table th,.main-content .personnel-table td{white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;width:auto!important;max-width:none!important}
.main-content .progress-board-table td *,.main-content .personnel-table td *{max-width:none!important;text-overflow:clip!important}
.main-content .progress-board-table th select,.main-content .personnel-table th select{width:auto!important;min-width:0!important;max-width:none!important}
.main-content .progress-board-table td:nth-child(3),.main-content .personnel-table td:nth-child(3){white-space:normal!important;min-width:200px!important;max-width:320px!important}
/* 4.3.146 見積・排程 top area: one aligned toolbar line, filters flow in rows, adjustment history folded. */
.main-content .schedule-sheet-toolbar{min-height:24px!important;padding:0 2px!important;margin:0 0 4px!important;display:flex!important;align-items:center!important}
.main-content .schedule-sheet-toolbar .dense-section-title{margin:0!important;display:flex!important;align-items:center!important;gap:8px}
.main-content .schedule-control-row{align-items:stretch!important;margin-bottom:4px!important}
.main-content .schedule-filter-stack{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;flex-wrap:wrap!important;align-content:flex-start!important;align-items:center!important;gap:5px 16px!important;padding:6px 8px!important}
.main-content .schedule-filter-stack>.schedule-filter-level{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:4px!important;grid-column:auto!important;grid-row:auto!important;margin:0!important;min-height:0!important}
.main-content .schedule-filter-stack>.schedule-filter-level:first-child input{width:220px!important;height:24px!important}
.main-content .schedule-filter-stack>.schedule-filter-level>span{white-space:nowrap}
.main-content .schedule-edit-help{margin:2px 0!important;font-size:11px!important}
.capacity-adjust-fold{margin-top:4px}.capacity-adjust-fold>summary{cursor:pointer;font-size:12px;color:#36584e;padding:2px 0}
.capacity-adjust-fold[open]>.capacity-adjust-history{max-height:150px;overflow:auto}
.main-content .schedule-filter-stack>.schedule-filter-level{width:auto!important;flex:0 0 auto!important;justify-content:flex-start!important;text-align:left!important;max-width:100%!important}
.main-content .schedule-filter-stack>.schedule-filter-level>*{grid-column:auto!important;margin:0!important}
.main-content .schedule-filter-stack .usage-subgroup{display:flex!important;flex-wrap:nowrap!important;gap:4px!important;width:auto!important}
/* 4.3.147: adjustment form labels sit left of their inputs on one line; schedule table runs to the bottom edge. */
.main-content .capacity-adjust-form{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:4px 10px!important}
.main-content .capacity-adjust-form>label{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:4px!important;margin:0!important;font-size:11px!important;white-space:nowrap}
.main-content .capacity-adjust-form>label>input,.main-content .capacity-adjust-form>label>select{height:26px!important;min-height:26px!important;width:auto!important;max-width:150px}
.main-content .capacity-adjust-form>label>input[type=number]{width:64px!important}
.main-content .capacity-adjustment-editor>h3{margin:0 0 4px!important;font-size:14px!important}
.main-content .schedule-workbench-v41{padding-bottom:0!important}
.main-content .schedule-workbench-v41>.schedule-sheet-card{margin-bottom:0!important;padding-bottom:0!important;border-bottom:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}
.main-content>div:has(> .schedule-workbench-v41){padding-bottom:0!important}
.main-content:has(.schedule-workbench-v41){padding-bottom:0!important}
.dashboard-adjustment-log .dense-section-title{display:flex;justify-content:space-between;align-items:center;gap:12px}
.dashboard-adjustment-log .dashboard-adjustment-filters{margin:0!important}
.dashboard-adjustment-log .capacity-adjust-fold[open]>.capacity-adjust-history{max-height:260px}
.performance-card .dense-section-title{display:flex;justify-content:space-between;align-items:center}
.main-content>div:has(> .schedule-workbench-v41){display:flex!important;flex-direction:column!important}
.main-content>div>.schedule-workbench-v41{flex:1 1 auto!important;height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important}
.main-content .schedule-workbench-v41>.schedule-sheet-card{display:flex!important;flex-direction:column!important}
.main-content .schedule-workbench-v41>.schedule-sheet-card .schedule-sheet-scroll{flex:1 1 0!important;height:auto!important;min-height:220px!important;max-height:none!important}
/* 4.3.148 見積・排程 sheet: every case is one line of equal height; columns size by content and the sheet scrolls sideways. */
.main-content .schedule-sheet-scroll{overflow-x:auto!important}
.main-content table.schedule-sheet{table-layout:auto!important;width:max-content!important;min-width:100%!important;max-width:none!important}
.main-content .schedule-sheet th,.main-content .schedule-sheet td,.main-content .schedule-sheet th.planned-deadline-col,.main-content .schedule-sheet td.planned-deadline-cell{white-space:nowrap!important;width:auto!important;min-width:0!important;max-width:none!important;overflow:visible!important;text-overflow:clip!important;height:30px!important}
.main-content .schedule-sheet td:nth-child(3) b,.main-content .schedule-sheet td:nth-child(3) b *{display:inline!important;white-space:nowrap!important}
.main-content .schedule-sheet td:nth-child(3) .schedule-status-badge{display:inline-block!important;margin:0 0 0 6px!important;vertical-align:middle;line-height:18px!important;padding:0 5px!important}
.main-content .schedule-sheet td:nth-child(3) .schedule-draft-state{display:inline!important;margin-left:4px}
.main-content .schedule-sheet td:nth-child(3) .schedule-draft-state:empty{display:none!important}
.main-content .schedule-sheet td:nth-child(5) select{width:auto!important;min-width:66px!important}
.main-content .schedule-sheet td input[type=number]{width:70px!important;min-width:70px!important}
