.approval-filters{display:grid;grid-template-columns:minmax(220px,1.7fr) minmax(160px,1fr) auto;align-items:end;gap:20px}.approval-filters .field{margin-bottom:0;min-width:0}.approval-filters .user-management-filter-actions{align-self:end;padding-bottom:1px}.approval-table{min-width:960px}.approval-table td{vertical-align:middle}.approval-table td:last-child{min-width:110px}.approval-action-panel{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:26px;margin-bottom:24px}.approval-action-panel h2{font-size:1.3rem}.approval-action-panel p:not(.eyebrow){font-size:.8rem;color:var(--muted);margin-top:10px}.approval-action-buttons{display:flex;gap:12px;flex-wrap:wrap}.approval-action-buttons .button{font-size:.8rem}.approval-revisions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.approval-revisions a{background:var(--surface-soft);color:var(--muted);border-radius:22px;padding:8px 13px;font-size:.72rem}.approval-revisions [aria-current=page]{background:var(--primary-soft);color:var(--primary)}.approval-events p{white-space:normal;overflow-wrap:anywhere}.approval-notifications{list-style:none;margin:0;padding:0}.approval-notifications li{padding:20px 0;border-bottom:1px solid var(--line)}.approval-notifications li:first-child{padding-top:0}.approval-notifications li:last-child{border-bottom:0}.approval-notifications a{display:flex;flex-direction:column;gap:7px;color:var(--text);font-size:.85rem}.approval-notifications span,.approval-notifications small{color:var(--muted);font-size:.78rem}.approval-notifications .is-unread strong{color:var(--primary)}
@media(max-width:900px){.approval-filters{grid-template-columns:1fr 1fr}.approval-filters .user-management-search{grid-column:1/-1}.approval-filters .user-management-filter-actions{grid-column:1/-1}.approval-action-panel{align-items:flex-start}}@media(max-width:600px){.approval-filters{grid-template-columns:1fr}.approval-filters .user-management-search,.approval-filters .user-management-filter-actions{grid-column:auto}.approval-action-buttons{width:100%}.approval-action-buttons .button{width:100%}}

.approval-unread-count{margin-left:auto;min-width:22px;padding:2px 6px;border-radius:10px;font-size:.65rem;text-align:center;background:var(--primary-soft);color:var(--primary)}

.approval-overview{margin:0 0 28px;min-width:0}
.approval-overview-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:26px}
.approval-overview-heading>div{min-width:0}.approval-overview-heading .eyebrow{font-size:.61rem;margin-bottom:10px}.approval-overview-heading h2{font-size:1.2rem}
.approval-route-caption{font-size:.76rem;color:var(--muted);line-height:1.75;margin-top:10px;overflow-wrap:anywhere}.approval-route-caption>span{white-space:normal}
.approval-state{flex-shrink:0;border-radius:999px;background:var(--primary-soft);color:var(--primary);padding:8px 13px;font-size:.72rem;font-weight:600;line-height:1.6}
.approval-state-success{background:var(--surface-soft);color:var(--success)}.approval-state-danger{background:var(--surface-soft);color:var(--danger)}.approval-state-attention{background:var(--primary-soft);color:var(--primary)}
.approval-version-note{font-size:.79rem;line-height:1.8;color:var(--muted);margin:0 0 24px;padding-left:16px;border-left:3px solid var(--primary)}
.approval-next-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.5fr);gap:22px 28px;margin:0 0 30px;padding:23px 24px;background:var(--surface-soft);border-radius:16px}
.approval-next-step>div{min-width:0}.approval-next-step dt{font-size:.68rem;color:var(--muted);margin-bottom:8px}.approval-next-step dd{margin:0;font-size:.8rem;line-height:1.8;font-weight:550;overflow-wrap:anywhere}
.approval-waiting{display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px;font-size:.68rem;color:var(--muted);line-height:1.8;margin-top:9px}.approval-waiting>.icon{width:14px;height:14px}.approval-waiting>span:not(.icon){flex-basis:100%}
.approval-journey-scroll{max-width:100%;overflow-x:auto;scrollbar-width:thin;padding:6px 3px 16px;border-radius:8px}.approval-journey-scroll:focus-visible{outline:2px solid var(--primary);outline-offset:5px}
.approval-journey{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(138px,1fr);list-style:none;margin:0;padding:0;min-width:100%}
.approval-node{position:relative;min-width:0;text-align:center;padding:0 12px}.approval-node:before{content:'';position:absolute;top:18px;left:-50%;width:100%;height:2px;background:var(--line)}.approval-node:first-child:before{display:none}
.approval-node-dot{position:relative;z-index:1;display:grid;place-items:center;width:38px;height:38px;border:2px solid var(--line);border-radius:50%;margin:0 auto 17px;background:var(--surface);color:var(--muted);font-size:.76rem;font-weight:600}.approval-node-dot>.icon{width:18px;height:18px}
.approval-node-copy{display:flex;flex-direction:column;gap:8px}.approval-node-copy>strong{font-size:.8rem;line-height:1.65;font-weight:600;overflow-wrap:anywhere}.approval-node-status{font-size:.72rem;font-weight:600;line-height:1.65;color:var(--muted)}.approval-node-person,.approval-node-copy>small{font-size:.72rem;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}
.approval-node.is-approved:before,.approval-node.is-current:before{background:var(--primary)}.approval-node.is-approved .approval-node-dot{border-color:var(--success);background:var(--success);color:var(--surface)}.approval-node.is-approved .approval-node-status{color:var(--success)}
.approval-node.is-submitted .approval-node-dot{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.approval-node.is-current .approval-node-dot{border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 5px var(--primary-soft)}.approval-node[aria-current=step] .approval-node-status{color:var(--primary)}
.approval-node.is-bypassed:before{background:repeating-linear-gradient(90deg,var(--line) 0 5px,transparent 5px 9px)}.approval-node.is-bypassed .approval-node-dot{border-style:dashed;background:var(--surface-soft)}
.approval-node.is-returned .approval-node-dot{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.approval-node.is-rejected .approval-node-dot{border-color:var(--danger);background:var(--danger);color:var(--surface)}.approval-node.is-rejected .approval-node-status{color:var(--danger)}
.approval-overview-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 24px;margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.approval-overview-footer p{font-size:.7rem;color:var(--muted);line-height:1.8}.approval-overview-footer a{display:inline-flex;align-items:center;gap:9px;min-height:34px;font-size:.74rem;font-weight:600;white-space:nowrap}.approval-overview-footer .icon{width:16px;height:16px}
.approval-edit-boundary{display:flex;align-items:flex-start;gap:11px;font-size:.72rem;line-height:1.8;color:var(--muted);margin-top:22px}.approval-edit-boundary .icon{width:17px;height:17px;margin-top:2px}
#approval-progress-heading{scroll-margin-top:110px}
@media(max-width:1000px){.approval-next-step{grid-template-columns:repeat(2,minmax(0,1fr))}.approval-next-step>div:last-child{grid-column:1/-1}}
@media(max-width:900px){.approval-journey-scroll{overflow:visible;padding:4px 0 0}.approval-journey{display:flex;flex-direction:column;min-width:0;gap:0}.approval-node{display:flex;align-items:flex-start;gap:19px;text-align:left;padding:0 0 27px}.approval-node:before{left:18px;top:38px;width:2px;height:auto;bottom:0}.approval-node:first-child:before{display:block}.approval-node:last-child:before{display:none}.approval-node-dot{flex:0 0 38px;margin:0}.approval-node-copy{padding-top:2px;gap:6px}.approval-node.is-bypassed:before{background:repeating-linear-gradient(180deg,var(--line) 0 5px,transparent 5px 9px)}.approval-overview-footer{margin-top:2px}}
@media(max-width:600px){.approval-overview{margin-bottom:24px}.approval-overview-heading{flex-direction:column;gap:17px;margin-bottom:22px}.approval-state{max-width:100%;overflow-wrap:anywhere}.approval-next-step{grid-template-columns:1fr;padding:21px 19px;gap:21px;margin-bottom:27px}.approval-next-step>div:last-child{grid-column:auto}.approval-node{gap:17px;padding-bottom:26px}.approval-node-copy>strong{font-size:.8rem}.approval-node-status,.approval-node-person,.approval-node-copy>small{font-size:.72rem}.approval-overview-footer{gap:14px}.approval-overview-footer a{white-space:normal}.approval-edit-boundary{margin-top:18px}}

/* The review page leads with the request and the action required of this user. */
.approval-detail-heading{align-items:flex-start;margin-bottom:27px}
.approval-detail-heading .page-heading{min-width:0}
.approval-detail-heading .eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-bottom:13px}
.approval-detail-reference{display:inline-flex;padding:5px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:.68rem;letter-spacing:.02em;text-transform:none;font-weight:650}
.approval-detail-heading h1{font-size:clamp(1.65rem,2.8vw,2.35rem);line-height:1.2;letter-spacing:-.035em;max-width:800px}
.approval-detail-meta{display:flex;flex-wrap:wrap;gap:9px 20px;margin-top:17px;color:var(--muted);font-size:.76rem;line-height:1.6}
.approval-detail-meta>span{display:inline-flex;align-items:center;gap:7px;min-width:0;overflow-wrap:anywhere}
.approval-detail-meta .icon{width:15px;height:15px;flex:0 0 15px;color:var(--primary)}
.approval-detail .approval-action-panel{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:start;justify-content:stretch;overflow:hidden;margin:0 0 24px;padding:28px 31px;border:1px solid var(--line);box-shadow:0 14px 34px rgba(28,36,44,.045)}
.approval-detail .approval-action-panel.is-actionable{border-color:var(--primary-soft);background:linear-gradient(115deg,var(--surface),var(--surface) 62%,var(--primary-soft))}
.approval-detail .approval-action-panel.is-actionable::before{content:"";position:absolute;top:0;bottom:0;left:0;width:4px;background:var(--primary)}
.approval-action-intro{display:flex;align-items:flex-start;gap:18px;max-width:850px}
.approval-action-intro>div{min-width:0}
.approval-action-symbol{display:grid;place-items:center;flex:0 0 45px;width:45px;height:45px;border-radius:15px;background:var(--primary-soft);color:var(--primary)}
.approval-action-symbol .icon{width:22px;height:22px}
.approval-detail .approval-action-panel .eyebrow{margin:1px 0 8px;color:var(--primary);font-size:.66rem;letter-spacing:.13em}
.approval-detail .approval-action-panel h2{font-size:clamp(1.18rem,1.9vw,1.48rem);line-height:1.3;letter-spacing:-.02em}
.approval-detail .approval-action-panel .approval-action-copy{max-width:740px;margin:10px 0 0;color:var(--muted);font-size:.83rem;line-height:1.75}
.approval-review-link{display:inline-flex;align-items:center;gap:7px;margin-top:13px;padding:5px 0;color:var(--primary);font-size:.76rem;font-weight:650;text-decoration:none}
.approval-review-link:hover{text-decoration:underline;text-underline-offset:3px}
.approval-review-link .icon{width:15px;height:15px}
.approval-detail .approval-action-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:21px 0 0 63px;padding-top:21px;border-top:1px solid var(--line)}
.approval-detail .approval-action-buttons .button{min-height:44px;padding:10px 18px;font-size:.79rem;white-space:normal;text-align:center}
.approval-detail .approval-action-buttons .button .icon{width:16px;height:16px}
.approval-detail .approval-action-buttons .button.secondary{background:var(--surface);border:1px solid var(--line)}
.approval-detail .approval-action-buttons .button.secondary:hover{background:var(--primary-soft);border-color:var(--primary-soft);color:var(--primary)}
.approval-action-support{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin:18px 0 0 63px;color:var(--muted);font-size:.75rem;line-height:1.6}
.approval-action-support a{display:inline-flex;align-items:center;gap:7px;color:var(--primary);font-weight:650}
.approval-action-support a:hover{text-decoration:underline;text-underline-offset:3px}
.approval-action-support .icon{width:14px;height:14px}
.approval-detail-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:39px 0 20px;scroll-margin-top:110px}
.approval-detail-section-heading .eyebrow{color:var(--primary);font-size:.65rem;letter-spacing:.13em;margin:0 0 8px}
.approval-detail-section-heading h2{font-size:1.4rem;line-height:1.3;letter-spacing:-.025em}
.approval-detail-section-heading p:not(.eyebrow){font-size:.78rem;line-height:1.7;color:var(--muted);margin:7px 0 0}
.approval-detail .training-pdf-actions{margin:24px 0}
.approval-review-guide{margin:0 0 30px;padding:29px 32px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}
.approval-review-guide-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:25px}
.approval-review-guide-heading>div{min-width:0}.approval-review-guide-heading .eyebrow{margin:0 0 8px;color:var(--primary);font-size:.66rem;letter-spacing:.12em}
.approval-review-guide-heading h2{font-size:1.2rem;line-height:1.35;letter-spacing:-.02em}
.approval-review-guide-heading>p{max-width:380px;margin:0;color:var(--muted);font-size:.77rem;line-height:1.7}
.approval-review-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.approval-review-steps li{display:flex;align-items:flex-start;gap:14px;min-width:0;padding:25px 24px 26px 0}
.approval-review-steps li+li{padding-left:24px;border-left:1px solid var(--line)}
.approval-review-step-number{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:var(--primary-soft);color:var(--primary);font-size:.72rem;font-weight:750}
.approval-review-steps li>div{min-width:0}.approval-review-steps h3{font-size:.85rem;line-height:1.4;margin:2px 0 8px}
.approval-review-steps p{min-height:62px;margin:0;color:var(--muted);font-size:.74rem;line-height:1.65}
.approval-review-step-links{display:flex;flex-wrap:wrap;gap:7px 16px;margin-top:13px}
.approval-review-step-links a{display:inline-flex;align-items:center;gap:3px;color:var(--primary);font-size:.73rem;font-weight:650;text-decoration:none}
.approval-review-step-links a:hover{text-decoration:underline;text-underline-offset:3px}.approval-review-step-links .icon{width:14px;height:14px}
.approval-review-boundary{display:flex;align-items:flex-start;gap:10px;margin:20px 0 0;color:var(--muted);font-size:.75rem;line-height:1.7}
.approval-review-boundary .icon{flex:0 0 17px;width:17px;height:17px;margin-top:1px;color:var(--primary)}
.approval-documents-note{display:flex;align-items:flex-start;gap:12px;margin:0 0 20px;padding:17px 19px;border-radius:14px;background:var(--primary-soft);color:var(--text);font-size:.79rem;line-height:1.75}
.approval-documents-note .icon{flex:0 0 19px;width:19px;height:19px;margin-top:2px;color:var(--primary)}
.approval-hr-empty{display:flex;align-items:flex-start;flex-direction:column;gap:17px}.approval-hr-empty p{margin:0;color:var(--muted);font-size:.83rem}.approval-hr-empty .button{padding:11px 19px;font-size:.8rem}
.approval-tabs-hint{display:none}
@media(max-width:1050px){.approval-review-guide-heading{align-items:flex-start;flex-direction:column;gap:10px}.approval-review-guide-heading>p{max-width:670px}.approval-review-steps{grid-template-columns:1fr}.approval-review-steps li{padding:19px 0}.approval-review-steps li+li{padding-left:0;border-left:0;border-top:1px solid var(--line)}.approval-review-steps p{min-height:0}}
@media(max-width:700px){.approval-tabs-hint{display:block;margin:-13px 0 19px;color:var(--muted);font-size:.7rem}}
@media(max-width:600px){.approval-review-guide{padding:23px 20px}.approval-review-steps li{gap:12px}.approval-review-guide-heading h2{font-size:1.12rem}}
.approval-decision-modal .organisation-modal-heading{margin-bottom:18px}
.approval-decision-explanation{margin:0 0 16px;color:var(--text);font-size:.84rem;line-height:1.7}
.approval-decision-context{margin:0 0 24px;padding:12px 15px;border-radius:12px;background:var(--surface-soft);color:var(--text);font-size:.75rem;line-height:1.7;overflow-wrap:anywhere}
.approval-decision-context span{display:block;color:var(--muted);font-size:.7rem}
.approval-decision-modal .field{margin-bottom:23px}
.approval-decision-modal .organisation-modal-actions{margin-top:8px;padding-top:21px;border-top:1px solid var(--line)}
.approval-detail a:focus-visible,.approval-decision-modal a:focus-visible,.approval-decision-modal button:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
@media(max-width:700px){.approval-detail-heading{display:flex;flex-direction:column;gap:18px}.approval-detail-heading>.button{align-self:flex-start;margin-top:0}.approval-detail .approval-action-panel{padding:24px 22px}.approval-detail-section-heading{align-items:flex-start;flex-direction:column;gap:10px;margin-top:33px}}
@media(max-width:520px){.approval-detail-heading h1{font-size:1.65rem}.approval-detail-meta{flex-direction:column;gap:8px}.approval-action-intro{gap:12px}.approval-action-symbol{flex-basis:38px;width:38px;height:38px;border-radius:13px}.approval-action-symbol .icon{width:19px;height:19px}.approval-detail .approval-action-buttons,.approval-action-support{margin-left:0}.approval-detail .approval-action-buttons{display:grid;grid-template-columns:1fr;width:100%;margin-top:20px}.approval-detail .approval-action-buttons .button{width:100%;min-height:46px}.approval-detail .approval-action-panel{padding:21px 19px}.approval-decision-modal .organisation-modal-actions{display:grid;grid-template-columns:1fr}.approval-decision-modal .organisation-modal-actions .button{width:100%}}

dialog.approval-loading-screen[open]{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:24px;border:0;background:transparent;color:var(--text);box-shadow:none;box-sizing:border-box}
dialog.approval-loading-screen::backdrop{background:rgba(12,20,28,.58);backdrop-filter:blur(3px)}
.approval-loading-content{display:flex;flex-direction:column;align-items:center;gap:13px;width:min(100%,350px);padding:29px 25px;border:1px solid var(--line);border-radius:19px;background:var(--surface);box-shadow:0 24px 80px rgba(0,0,0,.2);text-align:center}
.approval-loading-spinner{width:38px;height:38px;border:3px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;animation:approval-loading-spin .8s linear infinite}
.approval-loading-title{margin:2px 0 0;font-size:1rem;font-weight:700;line-height:1.4}
.approval-loading-copy{margin:0;color:var(--muted);font-size:.78rem;line-height:1.65}
@keyframes approval-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.approval-loading-spinner{animation:none}}
