/* The handbook directory and reader share the website's neutral design system. */
.hb-page{--ink:#ececee;--ink-soft:#a9aaaf;--ink-mute:#85878d;--line:#303134;--line-soft:#252629;--accent:#c8c9ce;--accent-soft:#242528;--blue:#bcc0c8;--blue-soft:#24262b;--green:#b7c6bb;--bg-2:#1b1c1f;--bg-3:#18191b;--mono:var(--hb-font);--paper:#121315;line-height:1.8}
.hb-page #hb-main{padding-bottom:0}.hb-page h1,.hb-page h2,.hb-page h3,.hb-page h4{font-family:var(--hb-font);font-style:normal;letter-spacing:-.025em}.hb-page .hb-breadcrumb{font-size:12px;color:#929398;padding-top:28px;gap:10px}.hb-page .hb-breadcrumb [aria-current=page]{color:#c0c1c5}
.hb-page .hb-directory-hero,.hb-page .hb-reading-hero,.hb-page header.top.hb-reading-hero{padding:48px 0 36px!important;margin:0 auto;background:transparent;border:0;position:relative}.hb-page .hb-reading-hero{padding-right:85px!important}.hb-page .hb-kicker{font:11px/1.6 var(--hb-font);color:#8d8e94;letter-spacing:.08em;margin:0 0 18px}.hb-page .hb-directory-hero h1,.hb-page .hb-reading-hero h1,.hb-page header.top.hb-reading-hero h1{font:450 42px/1.35 var(--hb-font)!important;letter-spacing:-.035em!important;margin:0 0 16px!important;color:#eeeef0}.hb-page .hb-directory-desc,.hb-page .hb-reading-desc,.hb-page header.top .lede{font:15px/1.9 var(--hb-font);max-width:680px;color:#a1a2a8;margin:0}.hb-directory-meta{display:flex;gap:20px;flex-wrap:wrap;color:#8c8e94;font-size:12px;margin-top:25px}.hb-directory-meta span+span{border-left:1px solid #343538;padding-left:20px}.hb-page .hb-start{display:inline-flex;gap:35px;align-items:center;background:#e9e9eb;color:#151618;border:1px solid #e9e9eb;border-radius:6px;padding:10px 16px;margin-top:28px;font-size:13px;font-weight:500}.hb-start:hover{background:#fff}.hb-start span{font-size:17px}.hb-reading-count{position:absolute;right:0;top:62px;font-size:12px;color:#8a8b92;letter-spacing:.08em}
.hb-page #hb-main>.hb-directory{padding-top:12px}.hb-directory-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:0 0 18px;border-bottom:1px solid #414246}.hb-directory-heading h2{font-size:19px;font-weight:450;margin:0}.hb-directory-heading>span{font-size:10px;letter-spacing:.08em;color:#7e8087}.hb-page .hb-directory-row{display:grid;grid-template-columns:42px 1fr auto;gap:20px;align-items:start;padding:25px 0;border-bottom:1px solid #292a2d;transition:background .15s}.hb-directory-row:hover{background:#111214}.hb-row-number{font-size:12px;color:#777b83;padding-top:4px}.hb-directory-row h3{font-size:18px;font-weight:450;margin:0;line-height:1.6}.hb-directory-row p{font-size:13px;color:#909299;margin:8px 0 0;line-height:1.8}.hb-row-action{font-size:11px;color:#96989f;align-self:center;white-space:nowrap}.hb-row-action b{font-weight:400;font-size:17px;margin-left:18px;color:#d1d2d6}.hb-directory-note{display:grid;grid-template-columns:100px 1fr;gap:20px;padding-top:28px;margin-top:12px}.hb-directory-note>span{font-size:12px;color:#a2a4ab}.hb-directory-note p{font-size:13px;line-height:1.9;color:#868992;margin:0;max-width:720px}
.hb-reader-bar{position:sticky;top:65px;z-index:100;background:#101113f5;border-block:1px solid #2c2d30;backdrop-filter:blur(12px)}.hb-reader-bar>.hb-width{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:58px}.hb-reader-bar a{font-size:12px;color:#b4b6bc}.hb-reader-bar label{display:flex;align-items:center;gap:14px;font-size:11px;color:#81848c}.hb-reader-bar select{font:12px var(--hb-font);color:#dbdce0;background:#1b1c1f;border:1px solid #36373b;border-radius:5px;padding:8px 30px 8px 12px;max-width:330px}.hb-page .hb-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:28px 0;border-top:1px solid #303135;margin-top:44px}.hb-pagination a{display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.7;color:#c5c7cd}.hb-pagination a:last-child{text-align:right}.hb-pagination small{font-size:11px;color:#888b93}.hb-pagination .hb-page-directory{font-size:11px;color:#94979f}.hb-page .hb-footer{margin-top:55px}
.hb-lesson [data-hb-lesson]{display:none}.hb-lesson [data-hb-lesson].hb-lesson-active{display:block}.hb-page.hb-lesson #hb-main>section{padding:40px 0 0!important;border:0;background:transparent}.hb-lesson .section-head,.hb-lesson .sec-head{margin-bottom:28px}.hb-lesson :is(.section-title,.sec-title){font-size:26px!important;font-weight:450!important;line-height:1.5!important}.hb-lesson :is(.section-title,.sec-title) em{color:#c5c6cb}.hb-lesson .section-eyebrow,.hb-lesson .sec-eyebrow{font-size:11px;color:#85888f}.hb-lesson .section-num{display:none}.hb-lesson .section-subtitle,.hb-lesson .section-desc,.hb-lesson .sec-desc{font-size:14px;color:#a0a2a9;line-height:1.9}.hb-lesson .section-title br{display:none}
/* Reading panels have a single spacing, border and typography language. */
.hb-page :is(.entry-overview,.md-overview){margin-top:32px}.hb-page :is(.entry-overview,.selector-section,.knowledge-section,.checklist-section,.md-overview,.md-selector,.md-matrix-section,.md-checklist,.practice-card,.md-practice-card,.info){background:#121315;border:1px solid #303135;border-radius:6px;color:#e4e5e8;box-shadow:none}.hb-page :is(.entry-overview,.md-overview,.selector-section,.md-selector,.knowledge-section,.md-matrix-section,.checklist-section,.md-checklist) h2{font:450 24px/1.5 var(--hb-font);letter-spacing:-.025em}.hb-page :is(.entry-overview,.md-overview,.selector-section,.md-selector,.knowledge-section,.md-matrix-section,.checklist-section,.md-checklist) h2 em{font:inherit;color:inherit;white-space:normal}.hb-page :is(.overview-head,.md-overview-head,.section-head,.md-section-head,.md-rules,.journey,.rules,.info-grid .cell,.md-info-extra,.md-implementation,.md-extra,.md-implementation-cell,.card .hd){border-color:#2b2c30}.hb-page :is(.formula,.md-formula){background:#1e2024;border-color:#393b41;border-radius:5px;color:#b2b5bd}.hb-page :is(.product-switch,.md-switch,.selector-options,.md-options) button.on{background:#e0e1e4;color:#202125;border-color:#e0e1e4}.hb-page :is(.recommendation,.md-recommendation,.entry){border-radius:5px}.hb-page :is(.checklist-section,.md-checklist) :is(p,.md-check-text,.check-text){color:#b4b6bf}.hb-page :is(.checklist-section,.md-checklist) button{color:#bdc0c9;border-color:#3a3d44;background:#191b1f}.hb-page :is(.check-item,.md-check-item).on{background:#282d32;border-color:#67716c}.hb-page :is(.check-item,.md-check-item).on :is(.box,.md-box){background:#c3ceca;color:#1a2520}.hb-page :is(.check-progress,.md-progress) strong{color:#d0d4dd}.hb-page :is(.checklist-section,.md-checklist) :is(.kick,.md-kicker){color:#92969f}.hb-page :is(.practice-card,.md-practice-card) h3,.hb-page .info h4{font:500 21px/1.5 var(--hb-font)}.hb-page :is(.em-ico,.entry .ico){filter:grayscale(1)}.hb-page .entry.on{background:#282a30}.hb-page .entry.on .em-ico{background:#34363d}.hb-page .entry .play{opacity:1;color:#a2a6af}.hb-page .layout{padding-top:24px;padding-bottom:24px}.hb-page .workspace{border-color:#3b3e44}.hb-page .info-below{width:min(1064px,100%);padding:0 32px 24px!important;margin:auto}.hb-page .info{padding:26px}.hb-page .card.info :is(p,li){line-height:1.9}.hb-page .expill{border-radius:4px}.hb-page .pattern-component-links{max-width:1000px}
.hb-pattern-overview #hb-main>section{width:min(1000px,calc(100% - 64px));margin-inline:auto;padding:36px 0}.hb-pattern-overview .mod{background:#121315;border:1px solid #303135}.hb-pattern-overview .stats{margin-top:32px}.hb-page .hb-collection-hero h1{font-size:46px}.hb-book-card,.hb-page .mod{border-color:#303135;background:#121315}.hb-card-mark{color:#c1c3ca}.hb-card-foot{color:#a1a3ac}.hb-book-card p{color:#9b9da5}
@media(max-width:700px){.hb-page .hb-directory-hero,.hb-page .hb-reading-hero,.hb-page header.top.hb-reading-hero{padding:30px 0!important}.hb-page .hb-directory-hero h1,.hb-page .hb-reading-hero h1,.hb-page header.top.hb-reading-hero h1{font-size:30px!important;margin-bottom:14px!important}.hb-page .hb-kicker{font-size:10px;margin-bottom:13px}.hb-page .hb-directory-desc,.hb-page .hb-reading-desc,.hb-page header.top .lede{font-size:14px}.hb-reading-count{position:static;display:block;margin-top:15px;font-size:11px}.hb-directory-meta{gap:10px 14px;font-size:11px;margin-top:20px}.hb-directory-meta span+span{padding-left:14px}.hb-directory-meta span:last-child{width:100%;border:0;padding:0}.hb-start{margin-top:20px}.hb-page .hb-directory-row{grid-template-columns:25px minmax(0,1fr) 17px;gap:10px;padding:22px 0}.hb-directory-row h3{font-size:17px}.hb-directory-row p{font-size:12px}.hb-row-action{font-size:0}.hb-row-action b{margin:0}.hb-directory-note{grid-template-columns:1fr;gap:8px;padding-top:20px}.hb-reader-bar>.hb-width{gap:12px;min-height:54px}.hb-reader-bar label{min-width:0;max-width:73%}.hb-reader-bar label>span{display:none}.hb-reader-bar select{max-width:100%;width:100%;font-size:11px;padding:8px}.hb-reader-bar a{font-size:11px;white-space:nowrap}.hb-page.hb-lesson #hb-main>section{padding-top:28px!important}.hb-lesson :is(.section-title,.sec-title){font-size:23px!important}.hb-page .hb-pagination{grid-template-columns:1fr 1fr;gap:20px;margin-top:30px;padding:23px 0}.hb-pagination a{font-size:12px}.hb-pagination .hb-page-directory{grid-row:2;grid-column:1/-1;text-align:center;display:block;border-top:1px solid #292b30;padding-top:17px}.hb-page :is(.entry-overview,.md-overview,.selector-section,.md-selector,.knowledge-section,.md-matrix-section,.checklist-section,.md-checklist) h2{font-size:20px}.hb-page .layout{padding:20px!important}.hb-page .info-below{padding:0 20px 24px!important}.hb-page .info{padding:20px!important}.hb-pattern-overview #hb-main>section{width:calc(100% - 40px)}.hb-page .hb-collection-hero h1{font-size:36px}}

.hb-lesson .section-head{display:block;border:0;margin-bottom:28px}.hb-lesson .section-head :is(.section-title,.section-num,.section-eyebrow){display:none}.hb-lesson .section-sub{font-size:14px;line-height:1.9;max-width:720px;color:#a4a6ae;margin:0}.hb-lesson .stage-num{font:400 15px var(--hb-font);color:#8e929c}.hb-lesson .stage-title{font-size:19px;font-weight:500}.hb-lesson .stage-head{border-bottom-style:solid}.hb-page .pattern-related{width:min(1000px,calc(100% - 64px));max-width:1000px;margin:24px auto;padding:24px;border:1px solid #303135;border-radius:6px;background:#121315}.hb-page .pattern-related h2{font:450 22px/1.5 var(--hb-font)}
@media(max-width:700px){.hb-page .pattern-related{width:calc(100% - 40px);padding:20px}.hb-lesson .stage-title{font-size:17px}.hb-lesson .stage-head{flex-wrap:wrap;gap:6px 12px}.hb-lesson .stage-sub{font-size:11px}}
.hb-page :is(.overview-head,.md-overview-head,.md-section-head,.stage-head,.md-matrix-head){border-bottom-style:solid}.hb-page :is(.md-rules,.rules,.md-info-extra,.md-implementation){border-top-style:solid}.hb-page :is(.md-extra,.md-implementation-cell,.md-selector-result){border-left-style:solid}
