/* CoreIQ Office — Operations · Readiness. Rules copied verbatim from the design's qx.css
   (2026-10-06); only the Readiness classes are kept. Office additions are at the end. */
.qy{display:flex;flex-direction:column;gap:16px}
.qx-card{padding:6px 0 8px}
.qx-h{margin:0;font-size:14px;font-weight:600}
.qx-card>.qx-h{padding:10px 16px 6px}
.qx-wb-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 16px 6px;flex-wrap:wrap}
.qx-wb-h .off-muted{font-size:12px}
.qx-chk.is-done .qx-chk-t b{color:var(--text-muted);font-weight:500}
.qx-chk-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.qx-chk-t b{font-size:14px;font-weight:600;text-wrap:pretty}
.qx-chk-t span{font-size:12.5px;color:var(--text-muted);text-wrap:pretty}
.qx-scrim{position:fixed;inset:0;background:rgba(15,20,30,.32);z-index:95;display:flex;justify-content:flex-end}
.qx-drawer{width:min(680px,100%);height:100%;overflow:auto;background:var(--surface);box-shadow:-10px 0 30px rgba(0,0,0,.12);display:flex;flex-direction:column}
.qr-x{justify-self:end;width:36px;height:36px;border:none;border-radius:99px;background:var(--bg-subtle);font-size:20px;line-height:1;cursor:pointer;color:var(--text)}
.qr-sum{margin:0;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px}
.qr-sum div{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:10px 12px;border-top:1px solid var(--border-subtle)}
.qr-sum div:first-child{border-top:none}
.qr-sum dt{font-size:12px;color:var(--text-muted)}
.qr-sum dd{margin:0;font-size:13.5px;text-wrap:pretty}
.qr-sum button{border:none;background:none;font:inherit;font-size:12.5px;color:var(--brand);cursor:pointer}
.qr-done-i{width:56px;height:56px;border-radius:99px;background:var(--paid);color:#fff;display:grid;place-items:center}
.qf-dh{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:18px 20px 12px;border-bottom:1px solid var(--border)}
.qf-dh>div{display:flex;flex-direction:column;gap:3px}
.qf-dh h3{margin:2px 0 0;font-size:18px;font-weight:600}
.qf-dh em{font-style:normal;font-size:13px;color:var(--text-muted)}
.qy-chip{padding:4px 10px;border-radius:99px;font-size:12px;font-weight:600;background:var(--bg-subtle);color:var(--text-muted);white-space:nowrap}
.qy-chip--ok{background:var(--paid-bg);color:var(--paid-text)}
.qy-chip--hold{background:var(--hold-bg);color:var(--hold-text)}
.qy-toggle{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;cursor:pointer;user-select:none}
.qy-toggle input{position:absolute;opacity:0;pointer-events:none}
.qy-sw{width:34px;height:20px;border-radius:99px;background:var(--border-strong);position:relative;transition:background .15s}
.qy-sw::after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:99px;background:#fff;transition:transform .15s}
.qy-toggle input:checked+.qy-sw{background:var(--brand)}
.qy-toggle input:checked+.qy-sw::after{transform:translateX(14px)}
.qy-toggle input:focus-visible+.qy-sw{outline:2px solid var(--focus-ring);outline-offset:2px}
.qy-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.qy-meta div{background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.qy-meta b{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}
.qy-meta span{font-size:12px;color:var(--text-muted)}
@media (max-width:760px){.qy-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
.qy-ad{padding-bottom:0;overflow:hidden}
.qy-ad-h{display:flex;align-items:center;gap:10px;padding:12px 16px;flex-wrap:wrap}
.qy-ad-h .off-mono{font-size:12px;color:var(--text-subtle)}
.qy-pct{margin-left:auto;font-size:16px;font-variant-numeric:tabular-nums}
.qy-tbl{overflow-x:auto}
.qy-tr{display:grid;grid-template-columns:minmax(260px,1fr) repeat(5,80px);align-items:center;width:100%;min-width:640px;padding:9px 16px;border:none;border-top:1px solid var(--border-subtle);background:none;font:inherit;font-size:13px;text-align:left;color:var(--text)}
.qy-tr>span:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.qy-tr.is-btn{cursor:pointer}
.qy-tr.is-btn:hover{background:var(--bg-subtle)}
.qy-car{display:inline-block;width:12px;font-style:normal;color:var(--text-subtle);transition:transform .15s}
.qy-tr.is-x .qy-car{transform:rotate(90deg)}
.qy-why,.qy-tip{margin:0;font-size:12.5px;line-height:1.5;color:var(--text-muted);text-wrap:pretty;max-width:90ch}
.qy-why b,.qy-tip b{color:var(--text);font-weight:600;margin-right:4px}
.qy-ers{container:qyers/inline-size;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}
.qy-er{display:grid;grid-template-columns:104px minmax(220px,1fr) 130px 130px 190px;gap:12px;align-items:center;padding:8px 12px;border-top:1px solid var(--border-subtle);font-size:13px}
.qy-er:first-child{border-top:none}
.qy-er .qx-chk-t b{font-size:13px}
.qy-ev-s{font-size:11px;font-weight:600;padding:2px 8px;border-radius:99px;justify-self:start;white-space:nowrap}
.qy-ev-s--paid{background:var(--paid-bg);color:var(--paid-text)}
.qy-ev-s--hold{background:var(--hold-bg);color:var(--hold-text)}
.qy-ev-s--void{background:var(--void-bg);color:var(--void-text)}
.qy-er-o select{min-height:30px;font-size:12.5px;width:100%}
.qy-asg{display:inline-flex;align-items:center;gap:6px;max-width:100%;border:none;background:none;font:inherit;font-size:12.5px;color:var(--text-muted);cursor:pointer;text-align:left;padding:4px 6px;margin-left:-6px;border-radius:6px}
.qy-asg span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qy-asg svg{flex:0 0 auto;color:var(--text-subtle)}
.qy-asg:hover:not(:disabled){background:var(--surface);box-shadow:inset 0 0 0 1px var(--border)}
.qy-asg:hover:not(:disabled) svg{color:var(--brand)}
.qy-asg:hover:not(:disabled){color:var(--brand)}
.qy-asg.is-none{color:var(--brand);font-weight:600}
.qy-asg:disabled{cursor:default}
.qy-er-a{justify-self:end;display:flex;gap:6px}
.qy-er-d{display:flex;flex-direction:column;gap:1px;font-size:12.5px}
.qy-er-d b{font-weight:500}
.qy-er-d span{font-size:11.5px;color:var(--text-subtle);font-variant-numeric:tabular-nums}
.qy-er-d--hold b{color:var(--hold-text);font-weight:600}
.qy-er-d--bad b{color:var(--void-text);font-weight:600}
.qy-er{cursor:pointer}
.qy-er:hover{background:var(--bg-subtle)}
.qy-dr{padding:16px 20px 24px;display:flex;flex-direction:column;gap:16px}
.qy-dr-st{padding:12px 14px;border-radius:10px;display:flex;flex-direction:column;gap:4px;font-size:13.5px}
.qy-dr-st p{margin:0;line-height:1.5;text-wrap:pretty}
.qy-dr-st--paid{background:var(--paid-bg)}
.qy-dr-st--paid b{color:var(--paid-text)}
.qy-dr-st--hold{background:var(--hold-bg)}
.qy-dr-st--hold b{color:var(--hold-text)}
.qy-dr-st--void{background:var(--void-bg)}
.qy-dr-st--void b{color:var(--void-text)}
.qy-dr-sec{display:flex;flex-direction:column;gap:6px}
.qy-dr-sec h4{margin:0;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtle)}
.qy-dr-sec p{margin:0;font-size:13.5px;line-height:1.55;text-wrap:pretty}
.qy-dr-lead{color:var(--text-muted)}
.qy-dr-list{margin:0;padding-left:20px;font-size:13.5px;line-height:1.7}
.qy-dr-acts{display:flex;gap:8px;flex-wrap:wrap;padding-top:4px;border-top:1px solid var(--border-subtle);padding-top:16px}
.qf-dh .qy-ev-s{margin-bottom:4px;align-self:flex-start}
@container qyers (max-width:740px){.qy-er{grid-template-columns:minmax(0,1fr) auto}.qy-er .qy-ev-s{grid-column:1/-1}.qy-er-o,.qy-er-d{grid-column:1}.qy-er-a{grid-column:2;grid-row:2/5;align-self:center}}
.qy-first{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border-radius:12px;background:var(--paid-bg);border:1px solid var(--paid-border)}
.qy-first .qr-done-i{width:36px;height:36px}
.qy-first div{display:flex;flex-direction:column;gap:2px;font-size:13.5px}
.qy-first b{font-size:14.5px;font-weight:600;color:var(--paid-text)}
.qy-asr-note{margin:0;padding:10px 14px;border-radius:10px;background:var(--bg-subtle);font-size:13px;color:var(--text-muted)}
.qy-meta b.is-bad{color:var(--void-text)}
.qy-meta b.is-hold{color:var(--hold-text)}
.qy-bar{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.qy-bar .off-muted{font-size:12px}
.qy-seg{display:flex;gap:2px;padding:3px;border-radius:9px;background:var(--bg-subtle);border:1px solid var(--border)}
.qy-seg button{border:none;background:none;font:inherit;font-size:13px;font-weight:500;padding:6px 12px;border-radius:7px;cursor:pointer;color:var(--text-muted)}
.qy-seg button.is-on{background:var(--surface);color:var(--text);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.qy-tr:disabled{color:var(--text-muted)}
.qy-tr em{font-style:normal;color:var(--text-subtle);margin-right:6px}
.qy-th{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtle);background:var(--bg-subtle)}
.qy-tr .is-hold{color:var(--hold-text);font-weight:600}
.qy-tr .is-bad{color:var(--void-text);font-weight:600}
.qy-sub{padding:10px 16px 12px 40px;border-top:1px solid var(--border-subtle);background:var(--bg-subtle);display:flex;flex-direction:column;gap:8px;min-width:640px}
.qy-sub-h{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:12.5px}
.qy-sub-h .off-mono{font-size:12px;font-weight:600}
.qy-sub-t{color:var(--text-muted);flex:1 1 300px;text-wrap:pretty}
.qy-match{font-size:11px;font-weight:600;padding:2px 8px;border-radius:99px;background:var(--surface);border:1px solid var(--border)}
.qy-match--new{background:var(--void-bg);border-color:var(--void-border);color:var(--void-text)}
.qy-match--partial{background:var(--hold-bg);border-color:var(--hold-border);color:var(--hold-text)}
.qy-evs{display:flex;flex-wrap:wrap;gap:6px}
.qy-ev{display:inline-flex;gap:6px;align-items:center;padding:4px 9px;border-radius:6px;font-size:12px;background:var(--surface);border:1px solid var(--border)}
.qy-ev b{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.qy-ev--paid b{color:var(--paid-text)}
.qy-ev--hold b{color:var(--hold-text)}
.qy-ev--void b{color:var(--void-text)}
.qy-cu-over{border-color:var(--void-border)}
.qy-cu-over .qx-h{color:var(--void-text)}
.qy-cu-r{display:grid;grid-template-columns:48px minmax(200px,1fr) 120px 130px 210px;gap:12px;align-items:center;padding:10px 16px;border-top:1px solid var(--border-subtle);cursor:pointer}
.qy-cu-r:hover{background:var(--bg-subtle)}
.qy-cu-date{display:flex;flex-direction:column;align-items:center;line-height:1.1}
.qy-cu-date b{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}
.qy-cu-date span{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle)}
.qy-reg{justify-self:start;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--bg-subtle);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap}
@media (max-width:1100px){.qy-cu-r{grid-template-columns:48px minmax(0,1fr) auto}.qy-cu-r .qy-reg,.qy-cu-r .qy-er-d{grid-column:2}.qy-cu-r .qy-er-a{grid-column:3;grid-row:1/4}}
.qy-dr-acts .btn svg{margin-left:2px}
.qy-er-t{display:flex;gap:10px;align-items:center;min-width:0}
.qy-kind{flex:0 0 auto;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--bg-subtle);color:var(--text-muted)}
.qy-kind--policy,.qy-kind--plan,.qy-kind--display{background:var(--brand-bg);color:var(--brand)}
.qy-kind--register,.qy-kind--record{background:var(--hold-bg);color:var(--hold-text)}
.qy-kind--cert,.qy-kind--attest{background:var(--paid-bg);color:var(--paid-text)}
.qy-kind--lg{width:44px;height:44px;border-radius:12px}
.qy-dr-sec .qr-lbl{margin-top:6px}

/* Office additions */
.qy-asg:focus-visible,.qy-tr.is-btn:focus-visible,.qy-seg button:focus-visible,.qr-x:focus-visible{outline:none;box-shadow:var(--ring)}
.qy-asg:disabled:not(.is-system){color:var(--text-subtle);font-weight:500}
.qy-empty{padding:18px 16px;font-size:13px;color:var(--text-muted)}
.qy-err{padding:10px 14px;border-radius:10px;background:var(--void-bg);color:var(--void-text);font-size:13px}
