@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root{--font-body:'Satoshi',sans-serif;--font-display:'Satoshi',sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.25rem;--text-xl:clamp(1.5rem,3vw,2.1rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--muted:#aab8c2;--maxw:1000px}
body,input,button,textarea,select{font-family:var(--font-body)}body{font-size:var(--text-base)}h1,h2,h3,h4,.wordmark{font-family:var(--font-display)}h1{font-size:var(--text-xl);font-weight:500;letter-spacing:-.035em}h2{font-size:var(--text-lg)}.fine,.small,.kicker,.badge-mvp,.pill,.sub,.label{font-size:max(var(--text-xs),.75rem)}.wrap{max-width:var(--maxw)}.book-main{padding-top:var(--space-10)}.btn,.sb-gold,.sb-ghost{border-radius:5px;min-height:44px}.app-header .header-tag{font-size:var(--text-xs);color:var(--muted)}.app-header{position:static}.lede{max-width:58ch;font-size:var(--text-base)}.bk-facts{display:flex;flex-wrap:wrap;gap:var(--space-6);margin:var(--space-6) 0}.bk-facts li{padding:0;background:none;border:none;font-size:var(--text-sm)}.bk-form{max-width:760px}.bk-grid2{gap:var(--space-5)}.bk-client{padding:var(--space-6);border-radius:6px}.bk-client input,.bk-client textarea,.bk-client select,.bk-form input{font-size:var(--text-base);min-height:48px}.site-box{border-color:var(--border);border-radius:6px;padding:var(--space-6);margin-bottom:var(--space-8)}.site-box h2{font-size:var(--text-lg)}.site-box .sb-start{font-size:var(--text-xs)}.bk-table td,.bk-table th{padding:var(--space-4)}.policy-choices{border:0;margin:0;padding:0;display:grid;gap:var(--space-2)}.policy-choice{display:flex;align-items:center;gap:var(--space-3);min-height:44px;cursor:pointer;font-size:var(--text-sm)}.policy-choice input{width:18px;height:18px;flex-shrink:0}.policy-choice span{overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bk-table-wrap{margin-top:var(--space-6)}.bk-ring-word{font-size:var(--text-sm)}.bk-ring-sub{font-size:var(--text-xs)}.bk-legend{font-size:var(--text-xs)}.app-footer{margin-top:var(--space-12)}.app-footer p{line-height:1.7}.bk-error{color:#ffcbcb}.stepper button{min-height:44px}.app-header a:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.connector-details{border-top:1px solid var(--border);margin-top:var(--space-8);padding-top:var(--space-6)}.connector-details>summary{cursor:pointer;padding:var(--space-3) 0;color:var(--heading);font-size:var(--text-sm)}.skip{position:absolute;top:-100px;left:var(--space-4);z-index:50;background:var(--surface);padding:var(--space-4)}.skip:focus{top:var(--space-4)}.review-note{padding:var(--space-4);background:var(--surface);border-radius:5px;margin-bottom:var(--space-6);font-size:var(--text-sm);color:var(--muted)}.bk-ring svg text{font-size:12px}.bk-ring svg text:first-of-type{font-size:30px}
@media(max-width:600px){.book-main{padding-top:var(--space-6)}.bk-grid2{grid-template-columns:1fr}.site-box{padding:var(--space-5)}.bk-facts{gap:var(--space-3)}.header-tag{display:none}.bk-client{padding:var(--space-4)}.bk-table{min-width:520px}.bk-actions{gap:var(--space-3);flex-wrap:wrap}.bk-actions .btn{max-width:100%}.bk-client-grid{grid-template-columns:1fr}.bk-client-grid>*{grid-column:auto!important}.book-main{overflow-wrap:anywhere}}
:root{--font-body:'Inter',sans-serif;--font-display:'Space Grotesk',sans-serif}
.review-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5);margin:var(--space-6) 0;padding:var(--space-6) 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);text-align:left}
.review-counts>div{min-width:0}.review-counts dt{font-size:var(--text-sm);color:var(--body);min-height:3em;line-height:1.5}.review-counts dd{font:500 2rem/1.2 var(--font-display);color:var(--heading);margin:var(--space-3) 0 0}
.review-counts dd.unassessed{font:500 var(--text-base)/1.5 var(--font-body)}.review-counts .excluded dt{color:#f2b8b8}.review-counts .silent dt{color:var(--gold)}.review-counts .covered dt{color:#a3cfba}
#book-counts{margin-top:var(--space-8)}.count-key{margin:var(--space-6) 0;font-size:var(--text-sm);color:var(--muted)}.count-key summary{cursor:pointer;padding-block:var(--space-3);color:var(--azure)}.count-key dt{color:var(--heading);margin-top:var(--space-4)}.count-key dd{margin:var(--space-2) 0 0;max-width:75ch}
.counts-overview.ring-card{padding:0;background:none;border:0;text-align:left}.counts-overview .ring-sub{font-size:var(--text-sm);line-height:1.6;text-align:left}.rtile-status,.card .pill{white-space:normal}
.rtile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2)}.rtile .rtile-status{grid-column:1/-1;width:auto;font-size:var(--text-xs);text-transform:none;letter-spacing:0}.rtile-title{grid-column:1;min-width:0}.rtile-go{grid-column:2}
#book-table{min-width:0;width:100%}#book-table td{overflow-wrap:anywhere}#book-table thead th{font-size:var(--text-xs);white-space:normal}
#book-table td[data-label="Renewal"]{white-space:nowrap}
@media(max-width:700px){.review-counts{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}.review-counts dt{min-height:3em}.bk-table-wrap{overflow:visible}#book-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#book-table tbody,#book-table tr,#book-table td{display:block}#book-table tr{padding:var(--space-6) 0;border-top:1px solid var(--border)}#book-table td{padding:var(--space-2) 0;border:none}#book-table td[data-label]{display:flex;justify-content:space-between;gap:var(--space-5);font-size:var(--text-sm)}#book-table td[data-label]:before{content:attr(data-label);color:var(--muted)}#book-table td.client{margin-bottom:var(--space-3)}#book-table .unassessed-client td[data-label]{display:block}#book-table .unassessed-client td[data-label]:before{display:none}.card-top{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.missing-block{margin-top:var(--space-4)}.missing-block h3{font-size:var(--text-base);margin:0 0 var(--space-3)}
.missing-items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4) var(--space-6)}
.missing-items li{display:grid;gap:var(--space-1);font-size:var(--text-sm);line-height:1.5;align-content:start}
.missing-label{color:var(--heading)}.missing-reason{color:var(--gold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em}.missing-request{color:var(--muted)}
.missing-note,.missing-excluded,.missing-head{font-size:var(--text-sm);color:var(--muted);margin:0 0 var(--space-3)}.missing-excluded{margin:var(--space-3) 0 0}.missing-head{color:var(--heading)}
.missing-value{display:inline-flex;gap:var(--space-2);align-items:baseline}
.link-btn{background:none;border:0;padding:0;color:var(--azure);font:inherit;font-size:var(--text-xs);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link-btn:hover{color:var(--heading)}
#book-table .missing-row td{padding:var(--space-4) var(--space-5) var(--space-6);border-top:0;background:var(--surface)}
#book-table td.client{min-width:150px;overflow-wrap:normal}#book-table td.client .sub{overflow-wrap:anywhere}#book-table td.missing-cell{white-space:nowrap}
.bk-card-note{margin:var(--space-3) 0 0;max-width:70ch}
@media(max-width:700px){#book-table .missing-row{padding:0}#book-table .missing-row td{display:block;padding:var(--space-4) 0 var(--space-2)}.missing-items{grid-template-columns:1fr}#book-table td.client{min-width:0}}
/* v5.15 · review ring: the unweighted counts drawn as a ring (report, whole book, one per client) */
.ring-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:var(--space-6);align-items:center;text-align:left}
.ring-layout .review-counts{margin:0;padding:var(--space-4) 0;border-top:0;border-bottom:0}
.review-ring{margin:0;display:grid;justify-items:center;gap:var(--space-3)}
.review-ring figcaption{font-size:var(--text-xs);color:var(--muted);line-height:1.5;text-align:center;max-width:230px}
.review-ring-svg{display:block;max-width:100%;height:auto}
.review-ring-svg text{font-family:var(--font-display);fill:var(--heading)}
.review-ring-svg .ring-small{fill:var(--muted);font-family:var(--font-body)}
.review-ring-svg .ring-track{stroke:var(--border)}
.review-ring-svg.unassessed .ring-track{stroke:var(--muted);opacity:.6}
.review-ring-svg .ring-seg.excluded{stroke:var(--excluded)}
.review-ring-svg .ring-seg.silent{stroke:var(--silent)}
.review-ring-svg .ring-seg.covered{stroke:var(--covered)}
#book-rings{margin:var(--space-6) 0}
.bk-ring-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-4)}
.bk-ring{display:grid;justify-items:center;text-align:center;gap:var(--space-2);padding:var(--space-4) var(--space-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:inherit;text-decoration:none;position:static}
a.bk-ring:hover,a.bk-ring:focus-visible{border-color:var(--azure)}
.bk-ring.unassessed{border-style:dashed}
.bk-ring svg{width:150px;max-width:100%;height:auto;margin:0}
.bk-ring-name{color:var(--heading);font-weight:600;font-size:var(--text-sm);line-height:1.4}
.bk-ring-sub{color:var(--muted);font-size:var(--text-xs);line-height:1.5}
.bk-ring-legend{margin-top:var(--space-4)}
@media(max-width:700px){.ring-layout{grid-template-columns:1fr;justify-items:center}.ring-layout .ring-side{width:100%}.bk-ring-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ring-holder .review-ring-svg{width:210px;margin:0}.ring-card.counts-overview{text-align:left}.ring-card .ring-sub{text-align:left}
