/* Org Chart QA2183 — scoped to keep all existing HR Admin screens untouched */
.orgx-page{--orgx-ink:#182c49;--orgx-muted:#72819a;--orgx-border:#e1e8f3;--orgx-primary:#315fe9;--orgx-soft:#f5f8ff;padding-bottom:26px;color:var(--orgx-ink)}
.orgx-hero{display:flex;justify-content:space-between;align-items:center;gap:25px;position:relative;overflow:hidden;min-height:194px;padding:29px 36px;border-radius:22px;margin-bottom:18px;background:linear-gradient(112deg,#152945 0%,#244770 68%,#315e8e 100%);box-shadow:0 16px 34px #12294d1c;color:white}
.orgx-hero:before{content:'';position:absolute;right:-80px;bottom:-180px;width:500px;height:500px;border:1px solid #ffffff1a;border-radius:50%;box-shadow:0 0 0 55px #ffffff06,0 0 0 105px #ffffff06;pointer-events:none}
.orgx-hero-copy{position:relative;z-index:1}.orgx-eyebrow{letter-spacing:.14em;font-weight:850;font-size:10px;color:#a9ceff;display:flex;gap:12px;align-items:center}.orgx-eyebrow i{width:5px;height:5px;border-radius:50%;background:#60e9bd}.orgx-hero h2{color:white;font-size:clamp(27px,3vw,37px);line-height:1.15;margin:12px 0 9px;font-weight:800;letter-spacing:-.035em}.orgx-hero h2 span{font-size:21px;color:#78e3da}.orgx-hero p{color:#c9d8ed;font-size:13px;max-width:650px;line-height:1.7;margin:0}.orgx-stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.orgx-stats span{display:flex;align-items:center;gap:7px;background:#ffffff16;border:1px solid #ffffff24;border-radius:100px;padding:7px 13px;color:#dceafd;font-size:11px}.orgx-stats b{font-size:14px;color:white}.orgx-hero-graphic{width:150px;height:128px;position:relative;flex:none;opacity:.9}.orgx-graphic-node{position:absolute;width:48px;height:48px;border:1px solid #ffffff66;border-radius:15px;background:#ffffff21;backdrop-filter:blur(7px);display:grid;place-items:center;font-size:22px;z-index:2}.orgx-graphic-node.center{left:52px;top:6px;background:#62c8d640}.orgx-graphic-node.left{left:0;top:81px}.orgx-graphic-node.right{right:0;top:81px}.orgx-graphic-line{position:absolute;height:2px;background:#a5caec;top:71px;width:69px;transform-origin:center}.orgx-graphic-line.a{left:16px;transform:rotate(-48deg)}.orgx-graphic-line.b{right:15px;transform:rotate(48deg)}
.orgx-toolbar{background:#fff;border:1px solid var(--orgx-border);border-radius:17px;box-shadow:0 7px 25px #223f6a0b;margin-bottom:16px;padding:15px 18px}.orgx-filter-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.orgx-search-label{flex:2 1 220px;display:flex;align-items:center;gap:9px;padding:0 13px;height:44px;border:1px solid #d9e2f0;border-radius:11px;background:#f7f9fd;min-width:170px}.orgx-search-label>span{font-size:27px;color:#6b7f9f;line-height:1}.orgx-search-label input{background:transparent;border:0;outline:0;width:100%;font:inherit;font-size:12px;color:var(--orgx-ink)}.orgx-select-label{display:grid;gap:4px;flex:1 1 130px;min-width:120px}.orgx-select-label>span{font-size:10px;font-weight:800;color:#637694}.orgx-select-label select{height:44px;width:100%;max-width:100%;border:1px solid #d9e2f0;border-radius:11px;padding:0 10px;background:#fff;color:#263e5e;font:inherit;font-size:11px;cursor:pointer}
.orgx-toolbar-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;border-top:1px solid #eef1f7;margin-top:14px;padding-top:13px}.orgx-switch{display:flex;gap:4px;padding:4px;border-radius:10px;background:#f3f6fa}.orgx-switch button,.orgx-tool-actions button{cursor:pointer;border:0;font:inherit;font-weight:750;color:#667997}.orgx-switch button{padding:8px 15px;background:transparent;border-radius:8px;font-size:11px}.orgx-switch button.active{background:white;box-shadow:0 2px 10px #233c631c;color:#315fe9}.orgx-tool-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.orgx-tool-actions button{padding:8px 10px;border-radius:8px;background:transparent;font-size:11px;white-space:nowrap}.orgx-tool-actions button:hover{background:#f1f5ff;color:#2356da}.orgx-toolbar-separator{height:20px;width:1px;margin:0 5px;background:#dce4f1}.orgx-zoom-value{min-width:41px;text-align:center;font-size:11px;font-weight:800;color:#385071}.orgx-tool-actions .orgx-print-action{background:#eaf0ff;color:#315fe9;padding:9px 12px}
.orgx-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.orgx-chart-canvas{min-height:570px;overflow:hidden;background:radial-gradient(circle at 1px 1px,#d6e2f1 1px,transparent 0) 0 0/22px 22px,#f9fbff;border:1px solid var(--orgx-border);border-radius:20px;padding:24px 12px 30px}.orgx-company-section+.orgx-company-section{border-top:1px solid var(--orgx-border);margin-top:20px;padding-top:23px}.orgx-company-heading{display:flex;gap:11px;align-items:center;justify-content:center;text-align:start;max-width:90%;margin:auto}.orgx-company-icon{display:grid;place-items:center;width:41px;height:41px;border-radius:12px;background:#e7f0ff;color:#2960b2;font-weight:900;font-size:18px}.orgx-company-heading small{letter-spacing:.1em;font-size:8px;font-weight:900;color:#5c82bb}.orgx-company-heading h3{font-size:15px;margin:3px 0;color:#1e3658;font-weight:850}.orgx-company-heading span{color:#77859e;font-size:10px}.orgx-tree-viewport{overflow:auto;overscroll-behavior:contain;padding:25px 18px 23px;min-height:210px;scrollbar-color:#bbc9df transparent}.orgx-tree-stage{display:table;margin:auto;zoom:var(--orgx-scale,1);transition:zoom .16s ease}.orgx-root-list,.orgx-children{display:flex;align-items:flex-start;justify-content:center;padding:0;margin:0;gap:14px;list-style:none;width:max-content;min-width:100%}.orgx-tree-item{position:relative;display:flex;flex-direction:column;align-items:center;min-width:235px;list-style:none;padding:0 5px}.orgx-children{padding-top:38px;position:relative;gap:12px}.orgx-children:before{position:absolute;content:'';top:10px;height:28px;border-left:1.5px solid #b7c8e1;left:50%}.orgx-children>.orgx-tree-item:before,.orgx-children>.orgx-tree-item:after{content:'';position:absolute;top:0;width:50%;height:16px;border-top:1.5px solid #b7c8e1}.orgx-children>.orgx-tree-item:before{right:50%;border-right:1.5px solid #b7c8e1}.orgx-children>.orgx-tree-item:after{left:50%;border-left:1.5px solid #b7c8e1}.orgx-children>.orgx-tree-item:first-child:before,.orgx-children>.orgx-tree-item:last-child:after{border-top:0}.orgx-children>.orgx-tree-item:only-child:before,.orgx-children>.orgx-tree-item:only-child:after{border:0}.orgx-person-wrap{position:relative;width:228px;z-index:1}.orgx-person-card{width:100%;min-height:106px;text-align:start;display:flex;align-items:center;gap:11px;background:#fff;border:1.5px solid #dfe6f1;border-radius:15px;padding:13px 12px;box-shadow:0 7px 22px #263d650f;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.orgx-person-card:hover{transform:translateY(-3px);border-color:#9eb9fa;box-shadow:0 12px 25px #285db227}.orgx-person-wrap.selected .orgx-person-card{border-color:#4776ef;box-shadow:0 0 0 3px #4776ef21,0 12px 25px #285db225}.orgx-avatar{width:51px;height:51px;border-radius:13px;flex:none;background:linear-gradient(145deg,#d7e8ff,#ebf4fd);color:#265a9e;display:grid;place-items:center;overflow:hidden;position:relative;font-weight:900;font-size:17px}.orgx-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.orgx-avatar.large{width:83px;height:83px;border-radius:23px;font-size:29px;margin:auto}.orgx-person-text{min-width:0;display:flex;flex-direction:column;gap:5px;flex:1}.orgx-person-text strong{font-weight:850;color:#203653;font-size:12px;line-height:1.25;word-break:break-word}.orgx-person-text small{font-weight:700;color:#537098;font-size:10px;line-height:1.35;word-break:break-word}.orgx-person-text em{font-style:normal;font-size:9px;color:#92a0b4;word-break:break-word}.orgx-person-end{align-self:flex-start}.orgx-report-pill{display:flex;align-items:center;gap:3px;color:#315fe9;background:#eff4ff;font-size:10px;font-weight:900;padding:5px;border-radius:7px}.orgx-report-pill span{display:none}.orgx-leaf-dot{display:block;border-radius:50%;width:7px;height:7px;background:#8ed6be;margin-top:4px}.orgx-node-toggle{position:absolute;left:50%;bottom:-15px;transform:translateX(-50%);border:1px solid #c5d5f1;border-radius:8px;background:#fff;width:27px;height:27px;color:#315fe9;font-weight:900;font-size:17px;cursor:pointer;z-index:2;box-shadow:0 4px 10px #142d5912}.orgx-node-toggle:hover{background:#315fe9;color:#fff}.orgx-tree-item .orgx-person-card:focus-visible,.orgx-node-toggle:focus-visible{outline:3px solid #80afff;outline-offset:3px}
.orgx-details{position:sticky;top:18px;border:1px solid var(--orgx-border);border-radius:20px;background:white;box-shadow:0 7px 24px #223b6010;min-height:440px;padding:19px}.orgx-detail-top{display:flex;justify-content:space-between;align-items:center}.orgx-detail-caption{color:#7f91ad;font-weight:900;letter-spacing:.12em;font-size:9px}.orgx-panel-close{border:0;background:transparent;font-size:23px;cursor:pointer;color:#8fa0b6}.orgx-detail-person{text-align:center;padding:12px 0 19px}.orgx-detail-person h3{color:#203653;font-size:19px;font-weight:900;margin:12px 0 4px}.orgx-detail-person p{font-size:11px;color:#6e82a1;margin:0 0 11px}.orgx-status-pill{display:inline-flex;align-items:center;gap:6px;background:#e9f8ef;border-radius:30px;padding:7px 11px;color:#18825b;font-size:10px;font-weight:800}.orgx-status-pill i{width:6px;height:6px;border-radius:50%;background:#24ac72}.orgx-detail-metrics{display:grid;grid-template-columns:1fr 1fr;background:#f5f8fc;border-radius:13px;overflow:hidden}.orgx-detail-metrics>div{padding:12px;text-align:center;display:flex;flex-direction:column;gap:4px}.orgx-detail-metrics>div+div{border-inline-start:1px solid #e5ebf4}.orgx-detail-metrics b{font-size:20px;color:#285bd7}.orgx-detail-metrics small{font-size:9px;color:#7c8aa3}.orgx-detail-facts{padding:17px 0 8px}.orgx-detail-facts>div{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:10px 0;border-bottom:1px solid #f0f2f8}.orgx-detail-facts span{color:#8493a9;font-size:10px}.orgx-detail-facts strong{max-width:60%;text-align:end;font-size:10px;color:#2b3f60;font-weight:800;overflow-wrap:anywhere}.orgx-detail-actions{display:grid;gap:8px;margin-top:15px}.orgx-primary-action,.orgx-secondary-action{width:100%;border-radius:10px;cursor:pointer;padding:12px;font:inherit;font-size:11px;font-weight:850}.orgx-primary-action{border:1px solid #315fe9;color:white;background:#315fe9}.orgx-primary-action:hover{background:#224bd0}.orgx-secondary-action{border:1px solid #dbe4f2;color:#395b8a;background:#fff}.orgx-secondary-action:hover{background:#f2f6ff}.orgx-detail-empty{display:grid;place-items:center;text-align:center;min-height:390px;align-content:center}.orgx-detail-empty>span{color:#315fe9;font-size:30px}.orgx-detail-empty h3{font-size:16px}.orgx-detail-empty p{color:#8c9db4;font-size:12px;line-height:1.6}.orgx-loading,.orgx-no-results{margin:40px auto;max-width:360px;text-align:center;color:#8493ab;padding:40px 10px;font-size:13px}.orgx-no-results strong{color:#344c70;font-size:16px}.orgx-footer-help{padding:15px 3px 0;font-size:11px;color:#8292a9}.orgx-list-layout{display:grid;gap:16px;padding:0 10px}.orgx-list-company{padding:7px}.orgx-list-company h3{font-size:15px;color:#253f67}.orgx-list-rows{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:8px}.orgx-list-person{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e5eaf3;border-radius:12px;padding:10px;text-align:start;cursor:pointer}.orgx-list-person>span:nth-child(2){display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.orgx-list-person strong{font-size:11px;color:#1f3659}.orgx-list-person small{font-size:9px;color:#8294aa}.orgx-list-person em{font-style:normal;font-size:9px;color:#6482ba}.orgx-mobile-scrim{display:none}
/* Existing RTL controls are inherited; tree connections remain centered and do not flip. */
[dir=rtl] .orgx-person-card,[dir=rtl] .orgx-list-person{text-align:right}[dir=rtl] .orgx-company-heading{text-align:right}
@media(max-width:1230px){.orgx-workspace{grid-template-columns:minmax(0,1fr) 265px}.orgx-chart-canvas{padding-inline:3px}.orgx-hero{padding:22px}}
@media(max-width:990px){.orgx-workspace{grid-template-columns:minmax(0,1fr)}.orgx-details{position:fixed;bottom:0;top:auto;left:0;right:0;max-height:85vh;overflow:auto;transform:translateY(105%);transition:transform .2s;z-index:1002;border-radius:20px 20px 0 0;max-width:600px;margin:auto}.orgx-detail-open .orgx-details{transform:translateY(0)}.orgx-detail-open .orgx-mobile-scrim{display:block;position:fixed;inset:0;background:#0f1f396e;z-index:1001;border:0;width:100%;height:100%}.orgx-chart-canvas{min-height:460px}.orgx-hero-graphic{display:none}}
@media(max-width:570px){.orgx-hero{min-height:150px;padding:22px 19px;border-radius:14px}.orgx-hero h2{font-size:26px}.orgx-hero p{font-size:11px}.orgx-toolbar{padding:12px}.orgx-select-label{flex-basis:calc(50% - 12px)}.orgx-search-label{flex-basis:100%}.orgx-toolbar-bottom{gap:7px}.orgx-tool-actions button{padding:7px;font-size:10px}.orgx-toolbar-separator{display:none}.orgx-chart-canvas{border-radius:13px}.orgx-person-wrap{width:220px}}
@media print{body *{visibility:hidden!important}#peoplehierarchyPage,#peoplehierarchyPage .orgx-chart-canvas,#peoplehierarchyPage .orgx-chart-canvas *{visibility:visible!important}#peoplehierarchyPage{position:absolute;inset:0;width:100%;background:white!important}#peoplehierarchyPage .orgx-hero,#peoplehierarchyPage .orgx-toolbar,#peoplehierarchyPage .orgx-details,#peoplehierarchyPage .orgx-footer-help{display:none!important}.orgx-workspace{display:block!important}.orgx-chart-canvas{border:0!important;padding:10px!important;background:white!important;min-height:0!important;overflow:visible!important}.orgx-tree-viewport{overflow:visible!important}.orgx-tree-stage{zoom:1!important}.orgx-person-card{box-shadow:none!important;break-inside:avoid} @page{size:landscape;margin:10mm}}

/* QA 2184: Employee lifecycle integrity / vacancy visibility */
.orgx-needs-manager{display:inline-flex;align-self:flex-start;max-width:100%;margin-top:2px;padding:3px 6px;border-radius:6px;font-size:9px!important;font-style:normal;color:#a35e16;background:#fff3db;line-height:1.4}
.orgx-stats .orgx-alert-stat{background:#ffcd7836;border-color:#f6c4738a;color:#ffe7bd}
.orgx-stats .orgx-alert-stat b{color:#ffe7bd}
.orgx-tool-actions #orgxRefresh{background:#e7f5f1;color:#187761;border:1px solid #d1eee4}
.orgx-tool-actions #orgxRefresh:hover{background:#d3f0e5}
/* QA2184 · Replacement vacancy cards and manpower budget state */
.orgx-vacancy-card{border:1px dashed #dca95e!important;background:linear-gradient(140deg,#fffdf5,#fff7eb)!important}
.orgx-vacancy-avatar,.orgx-vacancy-detail-icon{background:#fff0cc!important;color:#ae6417!important;border:1px solid #f0ce94;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:24px}
.orgx-vacancy-status{display:inline-flex;align-self:flex-start;border-radius:7px;font-size:9px!important;font-style:normal;padding:4px 6px;line-height:1.5;margin-top:2px;white-space:normal}
.orgx-vacancy-status.budgeted{background:#e5f7ed;color:#136f4d}
.orgx-vacancy-status.approval-needed{background:#fff0d5;color:#955619}
.orgx-vacancy-plus{display:inline-flex;align-items:center;justify-content:center;color:#ae6417;background:#fff0cc;border-radius:9px;width:23px;height:23px;font-size:17px;font-weight:900}
.orgx-vacancy-stat{color:#9f6719!important;background:#fff8e9}
.orgx-vacancy-detail-icon{width:69px;height:69px;border-radius:18px;margin:12px auto 4px}
.orgx-vacancy-note{font-size:11px;line-height:1.7;color:#7b663d;background:#fff8e9;border-radius:10px;padding:12px}

/* QA335: generous employee identity cards and legible photographs on the live chart. */
.orgx-tree-item{min-width:272px}
.orgx-person-wrap{width:264px}
.orgx-person-card{min-height:125px;padding:15px 14px;gap:13px;border-radius:18px}
.orgx-avatar{width:66px;height:66px;border-radius:16px;font-size:21px}
.orgx-avatar.large{width:108px;height:108px;border-radius:24px;font-size:33px}
.orgx-person-text strong{font-size:13px;line-height:1.35}
.orgx-person-text small{font-size:11px}
.orgx-person-text em{font-size:10px}
.orgx-person-card .orgx-needs-manager{display:block;font-size:9px;line-height:1.35}
@media(max-width:600px){.orgx-tree-item{min-width:251px}.orgx-person-wrap{width:245px}.orgx-person-card{min-height:116px;padding:12px}.orgx-avatar{width:60px;height:60px}}
