/* ROP uses Support's shared shell, cards, forms, tables and typography. */
.chart-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.chart-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-panel{overflow:hidden;padding:18px}.echart{width:100%;height:330px;min-width:0}.overview-main-chart{height:360px}.overview-main-chart.chart-fallback{height:auto;max-height:65vh;overflow:auto}
.title-controls .period-box:has(#rop-scope),.title-controls .period-box:has(#rop-index){display:none}.local-period-controls{display:flex;gap:8px;flex-wrap:wrap}.local-period-controls>div{display:grid;gap:4px}
.overview-chart-layout{display:grid;grid-template-columns:minmax(170px,220px) minmax(0,1fr);grid-template-rows:auto auto 1fr;gap:10px 16px;align-items:start}.overview-chart-layout #overview-chart-sidebar{grid-row:1/4;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8fbf9}.overview-chart-layout #overview-chart-header{grid-column:2;grid-row:1}.overview-chart-layout #overview-chart-controls{grid-column:2;grid-row:2;margin:0}.overview-chart-layout #rop-chart{grid-column:2;grid-row:3;min-width:0}.overview-chart-layout #rop-chart:has(table){height:auto;min-height:0;overflow-x:auto}
.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.kpi-box{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px}.progress-track{height:7px;border-radius:5px;background:#eef2eb;margin:14px 0 6px;overflow:hidden}.progress-track i{display:block;height:100%;background:#278b7b;border-radius:5px}
.extra-filters{margin-left:auto;font-size:12px}.extra-filters summary{cursor:pointer;color:var(--muted)}.extra-filters[open]{width:100%}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.comparison-grid>.panel{min-width:0}.comparison-grid .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
.activity-table td{vertical-align:top;min-width:115px}.activity-table td:first-child{min-width:250px;max-width:340px}.activity-table td:nth-child(n+4):nth-child(-n+6){min-width:160px;max-width:240px}.activity-table .sub{white-space:normal;overflow-wrap:anywhere}.person-card .salary{margin-top:22px}.person-card .actions{margin-top:18px}.person .sub{display:block;font-size:11px;color:var(--muted);font-weight:400}.name-button{font:inherit}#dialog{max-width:1100px;width:94vw}.seasonality{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.reason{width:100%;min-height:110px;margin:8px 0}.dialog-actions{display:flex;gap:10px;margin-top:15px;justify-content:flex-end}.payments-table td{vertical-align:top}.payments-table td:nth-child(3){min-width:230px;max-width:340px}.payments-table td:nth-child(2){min-width:180px}.payments-table td:nth-child(6){min-width:170px}.allocation{margin-bottom:10px;font-size:11px}.allocation strong{display:block;font-size:13px}.allocation .link-button{display:block}.grid-box{max-height:65vh;overflow:auto}.grid-table td{min-width:100px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid-table th:first-child{position:sticky;left:0}.grid-table th{position:sticky;top:0;background:#fafbf8}.value-button{border:0;background:none;padding:0;color:inherit}.metric strong{overflow-wrap:anywhere}.empty{padding:35px 12px}#plan-chart{cursor:pointer}.fields small{display:block;font-size:11px;margin-top:5px}
@media(max-width:900px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.seasonality{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.chart-grid,.chart-grid.four{grid-template-columns:1fr}.chart-grid.three>section:last-child{grid-column:auto}.overview-chart-layout{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.overview-chart-layout #overview-chart-sidebar,.overview-chart-layout #overview-chart-header,.overview-chart-layout #overview-chart-controls,.overview-chart-layout #rop-chart{grid-column:1;grid-row:auto}.kpi-grid{grid-template-columns:1fr}.seasonality{grid-template-columns:repeat(3,minmax(0,1fr))}.comparison-grid{grid-template-columns:1fr}.chart-panel{padding:14px}}
@media(max-width:420px){.seasonality{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ROP table: Support hierarchy, isolated from the Support page. */
.rop-table-toolbar{align-items:end;flex-wrap:wrap;gap:16px}.rop-table-toolbar h2{margin:0 0 6px}.rop-table-toolbar .actions{align-items:end;flex-wrap:wrap}.rop-jump-label{display:grid;gap:5px;font-size:11px;color:var(--muted)}.rop-jump-label select{min-width:155px}.rop-table-legend{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:11px;color:var(--muted);margin:12px 0 22px}
.rop-region-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 8px}.rop-region-heading h3{margin:0}.rop-region-heading>span{font-size:11px;color:var(--muted)}.rop-table-region{min-width:0}.rop-table-wrap{position:relative;max-height:64vh;border:1px solid #cbd9d4;border-radius:10px;isolation:isolate;scroll-behavior:auto}.rop-detail-grid th,.rop-detail-grid td{box-sizing:border-box;height:38px}.rop-detail-grid .grid-period{min-width:142px;width:142px;max-width:142px;white-space:normal}.rop-detail-grid .grid-person{left:142px;min-width:190px;width:190px;max-width:190px}.rop-detail-grid thead tr:first-child th{height:44px}.rop-detail-grid thead tr:nth-child(2) th{top:44px;height:38px}.rop-detail-grid thead tr:nth-child(2) th:last-child{position:sticky;right:auto;z-index:4;box-shadow:none;background:#edf3f8}.rop-detail-grid .rop-total-heading{position:sticky;right:0;z-index:10;min-width:148px;background:#e1eee7!important;color:#173b35;font-size:12px}.rop-detail-grid tbody .rop-total{position:sticky;right:0;z-index:4;min-width:148px;font-weight:750;background:#f0f7f3;box-shadow:-4px 0 10px -8px #173b35}.rop-detail-grid td.num{min-width:100px;text-align:right}.rop-detail-grid [hidden]{display:none!important}
.rop-detail-grid .rop-group-0{background:#d9efe6}.rop-detail-grid .rop-group-1{background:#dce8f8}.rop-detail-grid .rop-group-2{background:#e9e1f4}.rop-detail-grid .rop-payment-heading{background:#e5edf7}.rop-detail-grid .grid-group-metric small{display:block;font-weight:400}.rop-detail-grid [data-group-toggle]{border:0;background:transparent;padding:1px 4px;font:inherit;font-weight:700;color:inherit}.rop-detail-grid [data-group-toggle] span{margin-left:6px}.rop-detail-grid .rop-payroll{background:#fffbf4}.rop-detail-grid .rop-payments{background:#f6f9fd}.rop-detail-grid .rop-table-cell{cursor:help}.rop-detail-grid .rop-table-cell:hover,.rop-detail-grid .rop-table-cell:focus-visible{outline:2px solid #548e79;outline-offset:-2px}.rop-period-status{display:block;margin:3px 0 0 22px;font-size:9px;font-weight:400;color:#7e5c32}.rop-person-link{border:0;background:transparent;padding:0;color:#244e41;font:inherit;cursor:pointer;text-align:left;text-decoration:underline;text-decoration-color:#b6ccc2;text-underline-offset:4px}.rop-person-note{display:block;font-size:10px;font-weight:400;color:#886529;margin-top:3px}.rop-scope-label{font-size:10px;font-weight:400;color:#72837d}.rop-partial-mark{color:#9a6610}.rop-current-month>.grid-period{box-shadow:inset 4px 0 #b67c26}
#rop-annual-tooltip{position:fixed;z-index:250;pointer-events:none;max-width:min(440px,calc(100vw - 16px));max-height:55vh;overflow:auto;padding:14px 16px;background:#193a33;color:#f5faf7;border:1px solid #466b60;border-radius:12px;box-shadow:0 18px 42px #142e2860;font-size:12px;line-height:1.55;overflow-wrap:anywhere}#rop-annual-tooltip[hidden]{display:none}#rop-annual-tooltip strong,#rop-annual-tooltip span{display:block;white-space:pre-line}#rop-annual-tooltip strong{margin-bottom:7px}
#employee-back{margin-bottom:12px}
.support-grid.rop-detail-grid tbody .rop-total{position:sticky;right:0}
@media(max-width:700px){.rop-detail-grid .grid-period{min-width:74px;width:74px;max-width:74px;font-size:10px}.rop-detail-grid .grid-person{left:74px;min-width:116px;width:116px;max-width:116px;font-size:11px}.rop-detail-grid .rop-total-heading,.rop-detail-grid tbody .rop-total{min-width:116px;font-size:10px}.rop-detail-grid thead tr:nth-child(2) th{top:44px}.rop-detail-grid td.num{min-width:85px}.rop-region-heading>span{display:none}.rop-table-wrap{max-height:62vh}.rop-period-status{margin-left:0}.rop-table-toolbar .actions{gap:7px}.rop-table-legend{margin-bottom:12px}}
@media(max-width:420px){.rop-detail-grid .grid-period{min-width:50px;width:50px;max-width:50px}.rop-detail-grid .grid-person{left:50px;min-width:100px;width:100px;max-width:100px}.rop-detail-grid .rop-total-heading,.rop-detail-grid tbody .rop-total{min-width:104px}.rop-detail-grid th,.rop-detail-grid td{padding:7px 5px}.rop-table-toolbar .actions>button{font-size:11px}}
@media(max-width:700px){.rop-detail-grid thead .grid-group-metric{text-align:left}.rop-detail-grid .grid-group-metric button{max-width:85px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

.title-controls .subdivision-box{width:190px}.title-controls #region{width:100%;min-width:0}

.company-plan-card{margin:18px 0 24px;padding:16px 18px;border:1px solid var(--line,#dfe4e0);border-radius:14px;background:#fff}.company-plan-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.company-plan-head h3{margin:0 0 4px;font-size:17px}.company-plan-head p{margin:0;color:var(--muted,#68736e);font-size:11px}.company-plan-head>label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700}.company-plan-head input,.company-plan-fields input{height:34px;border:1px solid #d6ded9;border-radius:8px;padding:6px 9px;background:#fff;color:inherit;font:inherit}.company-plan-head input{width:90px}.company-plan-fields{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-top:13px}.company-plan-fields>label{display:grid;gap:5px;font-size:10px;font-weight:700;color:#52615a}.company-plan-fields input{width:100%;font-size:12px}.company-plan-computed{display:grid;align-content:center;gap:5px;font-size:10px;color:#52615a}.company-plan-computed strong{font-size:15px;color:#23694e}.company-plan-reason{grid-column:1/-1}.company-plan-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.company-plan-actions button{border:1px solid #d6ded9;border-radius:8px;padding:8px 12px;background:#fff;font:inherit;font-size:11px;font-weight:700;cursor:pointer}.company-plan-actions button.primary{background:#176b4f;border-color:#176b4f;color:#fff}.company-plan-actions button:disabled{opacity:.45;cursor:not-allowed}.company-plan-preview{margin-top:10px;padding:10px 12px;border-radius:9px;background:#f3f7f3;font-size:11px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px}.company-plan-preview b{grid-column:1/-1}.company-plan-readonly{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;margin:14px 0 6px}.company-plan-readonly div{padding:9px 11px;border-radius:9px;background:#f5f7f5}.company-plan-readonly dt{font-size:10px;color:#65716a}.company-plan-readonly dd{margin:4px 0 0;font-size:13px;font-weight:700}.company-plan-message{min-height:14px;margin-top:8px;color:#39735b;font-size:11px}.company-plan-message.error{color:#a23a34}.company-plan-preview.hidden{display:none}@media(max-width:800px){.company-plan-fields,.company-plan-readonly{grid-template-columns:repeat(2,minmax(0,1fr))}.company-plan-head{align-items:flex-start}}
