/* Shared report document. Designed for browser presentation and print-to-PDF. */
.gap-report{--gr-ink:#13203d;--gr-muted:#66758d;--gr-rule:#dfe6f0;--gr-green:#c9f389;color:var(--gr-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:#fff;border:1px solid var(--gr-rule);border-radius:17px;overflow:hidden;box-shadow:0 15px 40px #1a355113;line-height:1.5;text-align:left}
.gr-head{background:#101b39;color:#fff;padding:35px 36px 37px;display:block}
.gr-brand-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:44px}
.gr-brand{font-size:18px;font-weight:950;letter-spacing:-.065em;color:#e4f1ff}
.gr-brand::after{content:"";display:inline-block;background:#ccf594;border-radius:100%;height:7px;width:7px;margin-left:6px;vertical-align:middle}
.gr-doc-code{font-size:10px;border:1px solid #4b5a76;padding:6px 10px;border-radius:30px;color:#b9cae1;font-weight:800;letter-spacing:.12em;text-align:right}
.gr-head-content{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.gr-head-content>div:first-child{max-width:640px}
.gr-eyebrow{font-size:10px;letter-spacing:.19em;color:#c8f18e;font-weight:900}
.gr-title{margin:12px 0 8px!important;line-height:1.12!important;letter-spacing:-.05em!important;color:#fff!important;font-size:clamp(1.65rem,3vw,2.6rem)!important}
.gr-lead{color:#c0cbe1!important;font-size:13px!important;line-height:1.6;max-width:490px!important;margin:0!important}
.gr-meta{display:grid;gap:2px;max-width:240px;flex-shrink:0;text-align:right;color:#b4c0d8;font-size:11px}
.gr-meta div:last-child{color:#ebefff}
.gr-body{padding:33px 36px 20px}
.gr-section{margin-bottom:42px}
.gr-section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--gr-rule);padding-bottom:11px;margin-bottom:19px}
.gr-section-head h3{font-size:19px!important;letter-spacing:-.038em!important;margin:0!important;line-height:1.3}
.gr-section-number{font-size:10px;color:#8290a6;letter-spacing:.08em;font-weight:800;white-space:nowrap}
.gr-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.gr-stat{background:#f5f7fb;border:1px solid #e8edf5;border-radius:12px;padding:16px;min-width:0;display:flex;flex-direction:column;gap:7px}
.gr-stat.accent{background:#eff8e7;border-color:#dce9cc}
.gr-stat-label{font-size:11px;font-weight:800;color:#566783;min-height:32px;line-height:1.4}
.gr-stat-value{display:block;font-size:clamp(1.2rem,2.2vw,1.8rem);line-height:1.15;letter-spacing:-.055em;overflow-wrap:anywhere}
.gr-stat.accent .gr-stat-value{color:#365c31}
.gr-stat-note{font-size:10px;color:#7a879b;line-height:1.5}
.gr-note{margin-top:13px;padding:12px 15px;background:#f0f3fa;border-left:3px solid #8a9fe5;border-radius:5px;display:flex;flex-wrap:wrap;gap:6px 10px;font-size:11px;color:#66768d}
.gr-note strong{color:#344966}
.gr-breakdown{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.7fr);gap:23px}
.gr-bars{display:grid;gap:18px;align-content:center}
.gr-bar-row{display:grid;gap:5px}
.gr-bar-label{display:flex;justify-content:space-between;gap:10px;font-size:12px}
.gr-bar-label strong{font-weight:750}
.gr-bar-label span{color:#8291a4}
.gr-bar-track{height:9px;border-radius:9px;background:#ecf0f6;overflow:hidden}
.gr-bar-fill{height:100%;min-width:0;background:#7386cf;border-radius:9px}
.gr-bar-row:nth-child(1) .gr-bar-fill{background:#94be64}
.gr-bar-row:nth-child(2) .gr-bar-fill{background:#d9a052}
.gr-bar-row:nth-child(4) .gr-bar-fill{background:#a3aaba}
.gr-review-box{background:#172447;color:#fff;border-radius:13px;padding:22px}
.gr-overline{display:block;color:#afc0e0;font-size:10px;font-weight:850;letter-spacing:.13em}
.gr-review-count{display:block;font-size:45px;line-height:1;letter-spacing:-.07em;margin:16px 0 4px;color:#d5f7a1}
.gr-review-box p{font-size:11px!important;color:#c2cce1!important;margin:0 0 20px!important}
.gr-priority-list{display:flex;flex-direction:column;gap:7px}
.gr-priority-chip{font-size:11px;display:flex;gap:10px;align-items:center;color:#c7d6ef}
.gr-priority-chip b{display:inline-flex;justify-content:center;align-items:center;width:22px;height:22px;color:#14203b;background:#dce5f9;border-radius:5px}
.gr-finding{padding:18px 19px;margin:12px 0;border:1px solid #dfe6f1;border-radius:11px;break-inside:avoid}
.gr-finding-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.gr-type{font-size:10px;letter-spacing:.06em;padding:4px 8px;border-radius:5px;font-weight:850;display:inline-block;background:#e9edf8;color:#3f578c}
.gr-type-uninvoiced-work{background:#e7f4df;color:#4b7a40}
.gr-type-overdue-balance{background:#fff0da;color:#875b1b}
.gr-type-stale-quote{background:#f1f3f8;color:#56657e}
.gr-finding h4{margin:9px 0 3px!important;font-size:17px;letter-spacing:-.025em}
.gr-reference{font-size:10px;font-weight:750;letter-spacing:.06em;color:#7e8da4}
.gr-amount{font-size:21px;letter-spacing:-.05em;white-space:nowrap}
.gr-explanation{font-size:12px;color:#53647d;margin:14px 0 13px}
.gr-evidence{border:1px solid #e4eaf2;background:#f8faff;border-radius:7px;padding:13px 15px;font-size:11px;overflow-wrap:anywhere}
.gr-evidence b,.gr-next b{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#425877}
.gr-evidence p,.gr-next p{margin:5px 0 0!important;font-size:11px!important;color:#566981!important}
.gr-next{padding:12px 2px 4px}
.gr-finding-foot{border-top:1px solid #edf1f7;padding-top:8px;margin-top:9px;font-size:10px;color:#657b98;font-weight:850;letter-spacing:.06em}
.gr-muted{font-size:12px!important;color:#64738b!important}
.gr-warning{display:flex;gap:11px;padding:12px 14px;margin:9px 0;border:1px solid #ead7ad;background:#fff8eb;border-radius:8px;font-size:12px;color:#745324}
.gr-warning-icon{width:19px;height:19px;border-radius:50%;background:#a96c1d;color:white;font-size:12px;flex-shrink:0;font-weight:900;text-align:center;line-height:19px}
.gr-method{background:#f5f7fb;border-radius:9px;padding:16px;margin-top:15px;font-size:12px}
.gr-method b{font-size:11px}
.gr-method p{font-size:11px!important;color:#627088!important;margin:7px 0 0!important}
.gr-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:17px 36px;border-top:1px solid #e1e6ef;font-size:10px;letter-spacing:.05em;color:#8190a4;background:#fbfcfe}
.gr-actions{padding:16px 36px;background:#f7f9fd;display:flex;flex-wrap:wrap;gap:10px;align-items:center;border-top:1px solid #e5eaf2}
.gr-button{font:inherit;border-radius:8px;padding:10px 14px;font-size:12px!important;font-weight:850!important;cursor:pointer;white-space:nowrap}
.gr-button-primary{background:#152548;color:white;border:1px solid #152548}
.gr-button-outline{background:white;color:#253c67;border:1px solid #bfcbdc}
.gr-action-disclaimer{font-size:10px;color:#7e8ca1;margin-left:auto;max-width:240px}
@media(max-width:820px){.gr-stats{grid-template-columns:repeat(2,1fr)}.gr-breakdown{grid-template-columns:1fr}.gr-meta{max-width:none;text-align:left}.gr-head-content{flex-direction:column;align-items:stretch}.gr-review-box{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.gr-review-count{margin:0}.gr-review-box p{margin:0!important}}
@media(max-width:530px){.gr-head{padding:24px 19px}.gr-brand-row{margin-bottom:22px}.gr-body{padding:22px 15px}.gr-stats{gap:8px}.gr-stat{padding:12px}.gr-stat-value{font-size:20px}.gr-section-head{align-items:flex-start}.gr-section-number{font-size:9px}.gr-finding{padding:13px}.gr-amount{font-size:18px}.gr-footer,.gr-actions{padding:14px 19px}.gr-action-disclaimer{margin-left:0}.gr-review-box{display:block}.gr-review-count{margin:13px 0}}
@page{size:A4;margin:13mm}
@media print{
  body.report-printing{background:white!important}
  body.report-printing *{visibility:hidden!important}
  body.report-printing .gap-report,
  body.report-printing .gap-report *{visibility:visible!important}
  body.report-printing .gap-report{position:absolute!important;left:0!important;top:0!important;width:100%!important;border:0!important;box-shadow:none!important;border-radius:0!important}
  body.report-printing .gap-report .gr-actions{display:none!important}
  .gap-report{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;box-shadow:none!important;border-radius:0!important}
  .gr-head{padding:24px!important}
  .gr-body{padding:22px 24px 6px!important}
  .gr-section{margin-bottom:25px!important}
  .gr-finding{break-inside:avoid!important;page-break-inside:avoid!important}
  .gr-footer{padding:12px 24px!important}
}
