/* Books reports, tax setup, agreements and import screens (books-reports.js, books-tax.js, books-agreements.js, books-import.js). Builds on books.css and the app tokens, so both themes work. */
.rp-body{margin-top:14px}
.bk .tabs{flex-wrap:wrap;overflow:visible}
.rp-bar{margin-top:0}
.rp-gap{margin-top:14px}
.rp-note{font-size:12.5px;margin:12px 0 0;max-width:80ch}
.rp-hint{font:12px var(--font);letter-spacing:0;text-transform:none;margin-left:6px}
.rp-mini{display:inline-flex;align-items:center;gap:8px;font:12px var(--font);letter-spacing:0;text-transform:none;color:var(--ink2)}
.rp-mini label{font:inherit;letter-spacing:0;text-transform:none;color:inherit}
.rp-mix{display:flex;width:120px;height:8px;border-radius:99px;overflow:hidden;background:var(--sf3)}
.rp-mix i{display:block;height:100%}
.rp-svg{width:100%;height:auto;max-height:300px;display:block}
.rp-grid{stroke:var(--bd);stroke-width:1}
.rp-ax{fill:var(--ink3);font:11px var(--mono)}
.rp-bar-r{fill:var(--acc)}.rp-bar-r.neg{fill:var(--crit)}
.rp-hb{display:grid;gap:8px}
.rp-hr{display:grid;grid-template-columns:minmax(120px,240px) minmax(0,1fr) auto;gap:12px;align-items:center}
.rp-hl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rp-ht{height:12px;background:var(--sf3);border-radius:99px;overflow:hidden}.rp-ht i{display:block;height:100%;background:var(--acc);border-radius:99px;min-width:2px}
.rp-hv{text-align:right;min-width:90px}
.rp-cand{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px 16px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--bd);min-height:56px}
.rp-je{margin-bottom:12px}
.rp-je>h3{flex-wrap:wrap}.rp-jm{font:12px var(--font);letter-spacing:0;text-transform:none}
.rp-jt{width:100%;border-collapse:collapse}
.rp-jt td{padding:7px 14px;border-bottom:1px solid var(--bd);height:auto;white-space:normal}
.rp-jt tr:last-child td{border-bottom:0}
.rp-jt td.n{width:130px;white-space:nowrap}
/* generic two-column form rows used by the drawers */
.rp-form{display:grid;gap:14px}
.rp-row2{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.rp-check{display:flex;align-items:center;gap:10px;min-height:36px}
.rp-check label{cursor:pointer}
.rp-steps{display:flex;gap:0;flex-wrap:wrap;margin:0 0 14px;border:1px solid var(--bd);border-radius:var(--r);background:var(--sf);overflow:hidden}
.rp-steps>div{flex:1 1 140px;padding:10px 14px;border-right:1px solid var(--bd);color:var(--ink3);min-width:0}
.rp-steps>div:last-child{border-right:0}
.rp-steps b{display:block;font:600 11px var(--font);letter-spacing:.08em;text-transform:uppercase}
.rp-steps .on{background:var(--sel);color:var(--acc)}.rp-steps .done{color:var(--ok)}
.rp-prog{height:10px;border-radius:99px;background:var(--sf3);overflow:hidden;margin:8px 0}
.rp-prog i{display:block;height:100%;background:var(--acc);transition:width .2s}
.rp-drop{border:2px dashed var(--bd2);border-radius:var(--r);padding:22px;text-align:center;color:var(--ink2);cursor:pointer;background:var(--sf)}
.rp-drop:hover,.rp-drop.on{border-color:var(--acc);background:var(--sel)}
.rp-drop input{position:absolute;opacity:0;width:1px;height:1px}
.rp-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 18px}
.rp-list{max-height:360px;overflow:auto;border:1px solid var(--bd);border-radius:var(--r);background:var(--sf)}
.rp-list>div{padding:8px 14px;border-bottom:1px solid var(--bd);display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:baseline}
.rp-list>div:last-child{border-bottom:0}
.rp-diff{display:inline-block;padding:0 6px;border-radius:2px;font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.04em}
.rp-diff.add{background:var(--okBg);color:var(--ok)}.rp-diff.chg{background:var(--warnBg);color:var(--warn)}.rp-diff.rem{background:var(--critBg);color:var(--crit)}
@media (max-width:719px){
  .rp-hr{grid-template-columns:minmax(0,1fr) auto}.rp-ht{grid-column:1/-1;order:3}
  .rp-cand{grid-template-columns:minmax(0,1fr) auto}
  .rp-cand .btn{grid-column:1/-1;justify-self:start}
  .rp-steps>div{flex-basis:50%;border-bottom:1px solid var(--bd)}
  .rp-jt td.n{width:auto}
}
.bk .tabs button .m{margin-left:6px;font-size:11px;color:var(--ink3)}
@media (max-width:719px){.bk .tabs button{padding:8px 10px}}
