.dr-workspace{color:#163d42;font-family:Arial,'Meiryo',sans-serif;font-size:14px}.dr-toolbar,.dr-filters,.dr-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0}.dr-toolbar h2{font-size:21px;margin:0 auto 0 0}.dr-toolbar h2 small{font-size:14px;color:#527b75}.dr-workspace input:not([type=checkbox]),.dr-workspace select,.dr-workspace textarea{border:1px solid #cad8d5;border-radius:5px;padding:7px 8px;font:inherit;background:white;color:inherit;max-width:100%}.dr-workspace input[type=checkbox]{width:17px;height:17px;accent-color:#25695d}.dr-summary{display:flex;gap:24px;align-items:center;flex-wrap:wrap;background:#edf5f1;border:1px solid #cbdfd6;padding:10px 14px;border-radius:8px;margin:10px 0}.dr-summary b,.dr-summary small{display:block}.dr-summary b{font-size:17px;margin-top:3px}.dr-summary strong{font-size:26px}.dr-summary span,.dr-summary small,.dr-actions small,.dr-foot{color:#56706d;font-size:12px}.dr-scroll{overflow:auto;max-height:calc(100vh - 295px);border:1px solid #d3dfdd;border-radius:7px;background:white}.dr-scroll table{border-collapse:separate;border-spacing:0;width:100%;white-space:nowrap}.dr-scroll th{position:sticky;top:0;background:#eaf1f0;z-index:1;text-align:left;font-weight:600;padding:10px 8px;border-bottom:1px solid #c4d7d2}.dr-scroll td{padding:7px 8px;border-bottom:1px solid #e4eae8;vertical-align:middle}.dr-scroll tr:hover td{background:#f2f7f5}.dr-scroll .dr-warning td{background:#fff8e8}.dr-scroll td small{display:block;font-size:11px;color:#647b79;margin:2px 0}.dr-name{min-width:200px;max-width:300px}.dr-name b{display:block;max-width:300px;overflow:hidden;text-overflow:ellipsis}.dr-request{font-variant-numeric:tabular-nums}.dr-hours,.dr-review{font:inherit;color:#205d51;background:#f1f7f4;border:1px solid #c4d7ce;border-radius:4px;padding:5px 7px;cursor:pointer}.dr-hours{font-weight:bold;min-width:84px;text-align:right}.dr-hours span{font-size:11px;font-weight:normal}.dr-foot{padding:8px 0}.dr-editor{background:white;border-radius:12px;padding:22px;max-width:760px;width:calc(100% - 32px);max-height:90vh;overflow:auto;box-shadow:0 12px 70px #00251b33}.dr-editor h3{font-size:18px}.dr-values{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:#edf5f1;padding:12px}.dr-values span{font-size:12px}.dr-values b{display:block;font-size:22px;margin-top:5px}.dr-edit-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:16px 0}.dr-edit-fields label,.dr-reason{display:flex;flex-direction:column;gap:5px}.dr-reason textarea{min-height:70px}.dr-confirm{display:flex;align-items:center;gap:7px;padding:14px 0}.dr-filters label{display:flex;align-items:center;gap:5px}@media(max-width:700px){.dr-summary{gap:12px}.dr-values{grid-template-columns:repeat(2,1fr)}.dr-scroll{max-height:65vh}.dr-edit-fields{grid-template-columns:1fr}}

.dr-scroll td{line-height:20px}.dr-scroll td:last-child small{display:inline-block;margin:0 0 0 5px}.dr-review{font-size:12px;padding:3px 5px}.dr-hours{padding:3px 5px}.dr-modal-ratio{padding:10px;background:#f0f6f3;border-radius:6px}

/* One complete table, shared by annual review, division editor and customer view. */
.dr-workspace{font-family:var(--font-sans,sans-serif);color:var(--text,#1a1a1a)}
.dr-toolbar h2{color:var(--accent,#2c4a7c)}
.dr-scroll .dr-unified{table-layout:fixed;min-width:1640px;width:100%}
.dr-project-col{width:auto}.dr-scroll td{height:46px;box-sizing:border-box;padding:4px 6px;overflow:hidden;text-overflow:ellipsis;font-size:13px}
.dr-scroll th{padding:8px 6px;background:var(--accent-light,#e8edf3);color:var(--accent,#2c4a7c);font-size:12px}
.dr-name{min-width:0;max-width:none}.dr-name b,.dr-name small{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.dr-scroll td small{line-height:16px;margin:0}.dr-scroll td:last-child small{display:block;margin:0;font-size:10px}
.dr-hours{min-width:0;width:100%;font-size:13px}.dr-review{max-width:100%;white-space:nowrap}
.dr-summary{background:var(--accent-light,#e8edf3);border-color:var(--border,#e8e8e8);gap:20px;padding:8px 12px}
.dr-summary strong{font-size:22px}.dr-toolbar,.dr-filters,.dr-actions{gap:8px;margin:6px 0}.dr-scroll{max-height:calc(100vh - 270px)}
.dr-hours,.dr-review{color:var(--accent,#2c4a7c);border-color:#c5d0df;background:#f4f7fb}.dr-workspace input[type=checkbox]{accent-color:var(--accent,#2c4a7c)}

.dr-date{font-variant-numeric:tabular-nums}.dr-date span,.dr-date small{display:block}.dr-date small{color:#647084}

.dr-workspace .dr-sequence{width:100%;min-width:0;padding:5px 3px;font-size:13px;font-variant-numeric:tabular-nums;appearance:textfield}.dr-sequence::-webkit-inner-spin-button,.dr-sequence::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.dr-actual-input{width:72px!important;min-width:0;text-align:right;padding:6px!important}
.dr-hours-detail{display:block;border:0;background:transparent;color:var(--primary,#37675b);font-size:12px;cursor:pointer;margin:2px auto}
.dr-import-preview{padding:16px;border:1px solid #c6d8d0;border-radius:8px;background:#fff;margin:12px 0}
.dr-import-preview p{font-size:13px;margin:8px 0;color:#586963}
.dr-import-preview small{display:block;font-size:12px;margin:4px 0;color:#667b71}
.dr-import-scroll{max-height:300px;overflow:auto;margin:12px 0}
.dr-import-scroll table{width:100%;border-collapse:collapse}
.dr-import-scroll td,.dr-import-scroll th{padding:8px;text-align:left;border-bottom:1px solid #e1e8e3}
.dr-scroll{position:relative}
.dr-unified tr.dr-update-anchor td{border-top:3px solid #315f75}

.dr-scroll .dr-unified{width:max(100%,1550px)}.dr-project-col{width:260px}.dr-name b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:18px;max-height:36px;overflow:hidden}.dr-name small{white-space:nowrap}

/* Customer ledger keeps fifteen rows and one native scrollbar. */
.dr-customer .dr-scroll{max-height:none;min-height:180px;overscroll-behavior:auto}
.dr-customer .dr-toolbar,.dr-customer .dr-filters{gap:6px;margin:4px 0}
.dr-customer .dr-toolbar h2{font-size:18px}
.dr-customer input:not([type=checkbox]),.dr-customer select,.dr-customer .btn{padding:4px 7px;min-height:30px;font-size:13px}
.dr-customer .dr-scroll td{height:36px;padding:2px 6px;line-height:16px}
.dr-customer .dr-scroll td small{font-size:11px;line-height:14px}
.dr-customer .dr-scroll th{padding:5px 6px;line-height:18px}
.dr-customer .dr-name b{line-height:16px;max-height:32px}
.dr-customer .dr-foot{padding:3px 0;line-height:16px;font-size:11px}

.dr-customer .dr-name b{display:block;white-space:nowrap;line-height:16px;max-height:16px;text-overflow:ellipsis}

.dr-customer .dr-scroll th{top:0;z-index:5}
.lc-entry{display:inline-block}.lc-mask{position:fixed;inset:0;background:#172b4d66;z-index:2400;display:flex;align-items:center;justify-content:center;padding:20px;text-align:left;white-space:normal}.lc-panel{width:min(1100px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:12px;padding:22px;box-shadow:0 15px 60px #0003;color:#243b45;font-size:14px}.lc-head,.lc-controls,.lc-tabs,.lc-stats,.lc-item-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lc-head,.lc-item-title{justify-content:space-between}.lc-head h3{margin:0}.lc-head p,.lc-scope,.lc-next,.lc-panel small{color:#687b87;line-height:1.6}.lc-panel small{display:block}.lc-controls{margin:16px 0}.lc-controls input,.lc-tabs input{border:1px solid #cbd5db;border-radius:5px;padding:7px;background:white;color:#243b45}.lc-verdict{padding:14px;background:#edf7f2;border-left:4px solid #3d7963;border-radius:6px}.lc-verdict.warn{background:#fff5e9;border-color:#b8802d}.lc-stats{margin:16px 0}.lc-stats span{background:#f4f7f9;padding:10px 14px;border-radius:5px}.lc-stats b{font-size:20px;margin:0 5px}.lc-item{border:1px solid #dbe3e6;border-radius:7px;margin:12px 0;padding:14px}.lc-item table{width:100%;border-collapse:collapse;table-layout:fixed}.lc-item th,.lc-item td{border:1px solid #dbe3e6;padding:8px;overflow-wrap:anywhere;text-align:left}.lc-item th{background:#f3f6f8}.lc-empty{padding:25px;background:#f7faf9;text-align:center}.lc-error{color:#9d3030;background:#fff0f0;padding:12px}.lc-record{position:sticky;bottom:0;max-height:36vh;overflow:auto;padding:16px;background:#edf3ff;border:1px solid #bbcde7;box-shadow:0 -4px 15px #0001}.lc-record h4{margin:10px 0}.lc-panel button:focus-visible{outline:3px solid #4d86c6;outline-offset:2px}@media(max-width:650px){.lc-mask{padding:5px}.lc-panel{padding:12px;max-height:97vh}.lc-stats{gap:5px}.lc-item th,.lc-item td{padding:5px;font-size:12px}}

/* Native scrolling and keyboard-accessible sorting; never renumber business rows. */
.dr-sort{border:0;background:transparent;color:inherit;font:inherit;font-weight:600;padding:3px 0;cursor:pointer;text-align:left}.dr-sort:focus-visible{outline:2px solid #327c64;outline-offset:2px}
.dr-customer .dr-scroll{scrollbar-width:auto;scrollbar-gutter:stable}.dr-customer .dr-scroll::-webkit-scrollbar{width:16px;height:16px}.dr-customer .dr-scroll::-webkit-scrollbar-thumb{background:#819d94;border:3px solid #f3f6f4;border-radius:8px}.dr-customer .dr-scroll::-webkit-scrollbar-track{background:#f3f6f4}
