/* An annotated manuscript shelf, using the existing vertical Mongolian typeface. */
.mn{writing-mode:vertical-lr;text-orientation:mixed}
#knowledge{--shelf:#133840;--shelf-deep:#092930;--copper:#d5a96a;position:relative;width:100%;max-width:100%;padding:40px clamp(16px,4vw,60px);background:var(--shelf-deep);color:#f4eee0;border-top:4px solid var(--copper);scroll-margin-top:12px;overflow:hidden}
#knowledge::before{content:'';position:absolute;inset:10px 10px auto;height:5px;border-top:1px solid #d5a96a70;border-bottom:1px solid #d5a96a40;pointer-events:none}
.kb-intro{display:flex;align-items:flex-start;gap:28px;min-width:0;margin-bottom:28px}.kb-title-wrap{display:flex;flex-shrink:0;gap:14px;height:240px}.kb-title-wrap h2{font:34px/1.5 var(--mn);height:240px;margin:0;color:#ebc58d}.kb-title-wrap p{font-size:22px;line-height:1.7;height:240px;margin:0;color:#c9d6cc;max-width:150px;overflow-x:auto}.kb-intro-rule{width:1px;height:240px;background:#d5a96a50;flex-shrink:0}
.kb-meta{display:flex;flex:1;min-width:0;justify-content:space-between;gap:20px;flex-wrap:wrap}.kb-stats{display:flex;gap:20px;flex-wrap:wrap;min-width:0}.kb-stat{display:flex;flex-direction:column;gap:12px;align-items:flex-start;min-width:50px}.kb-stat strong{font:26px/1.2 Georgia,serif;color:#f1c483;white-space:nowrap}.kb-stat span{height:155px;font-size:20px;line-height:1.5;color:#bdcbc6}.kb-archive{display:flex;gap:15px;max-width:100%}.kb-archive a{display:block;writing-mode:vertical-lr;height:200px;font-size:22px;line-height:1.5;text-decoration:none;color:#f1cf9d;padding:12px;border:1px solid #d5a96a70}.kb-archive a:hover{background:#234950}.kb-archive small{writing-mode:vertical-lr;height:220px;font-size:18px;color:#a9bdb6;line-height:1.6}
.kb-tools{display:flex;align-items:stretch;gap:20px;border-top:1px solid #b2bfb02e;border-bottom:1px solid #b2bfb02e;padding:18px 0;margin-bottom:24px;min-width:0}.kb-categories{display:flex;flex:1;gap:8px;overflow-x:auto;min-width:0;padding:2px 2px 10px}.kb-category{height:148px;flex-shrink:0;min-width:48px;padding:10px;font-size:22px;line-height:1.5;border-color:#799287;color:#dde3d5}.kb-category[aria-pressed=true]{background:#eac791;color:#12343a;border-color:#eac791}.kb-category:hover{background:#335850;color:#fff}.kb-searchbox{display:flex;gap:8px;min-width:0;max-width:260px}.kb-searchbox label{height:145px;font-size:20px;color:#cad5c8}.kb-searchbox textarea{width:150px;min-width:65px;height:148px;resize:none;writing-mode:vertical-lr;font:22px/1.6 var(--mn);padding:10px;background:#183d44;border:1px solid #799287;color:#fff;border-radius:2px}.kb-searchbox button{width:44px;height:44px;min-width:44px;font:24px/1 system-ui;color:#d9e1d7;border-color:#799287}.kb-searchbox button:hover{background:#335850}
.kb-count{font:16px/1.4 system-ui;color:#c3b28c;margin-bottom:14px}.kb-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}.kb-card{position:relative;display:flex;width:100%;height:310px;text-align:start;padding:0;border:1px solid #bdc5b48a;border-radius:0;color:#223b39;background:#f2eedf;overflow:hidden;box-shadow:4px 5px 0 #051a2060}.kb-card:hover{background:#fff8e6;border-color:#efd09c;transform:translateY(-2px)}.kb-spine{display:flex;flex-direction:column;align-items:center;gap:14px;flex:0 0 48px;padding:16px 5px;background:#294e50;color:#e1c99e;border-right:1px solid #ba9f6a}.kb-number{font:17px/1.2 Georgia,serif}.kb-topic{height:215px;font-size:18px;line-height:1.4;max-width:38px;overflow:hidden}.kb-card-words{display:flex;gap:15px;min-width:0;padding:20px 18px;width:calc(100% - 48px)}.kb-card strong{font:28px/1.45 var(--mn);height:265px;flex-shrink:0;max-width:100px}.kb-summary{height:265px;max-width:90px;overflow:hidden;font-size:20px;line-height:1.6;color:#526a61}.kb-open-mark{position:absolute;bottom:8px;right:10px;font:20px/1 system-ui;color:#8b6431;background:#f2eedf;padding:2px}.kb-empty{height:210px;font-size:23px;color:#eac791}.kb-notes{display:flex;gap:20px;margin-top:24px;border-top:1px solid #b2bfb02e;padding-top:20px}.kb-notes p{height:210px;font-size:19px;line-height:1.6;color:#adbfba;margin:0;max-width:50%;overflow:auto}.kb-jump{font:24px/1 system-ui!important;width:44px;height:44px!important;min-height:44px}
#kb-reader{writing-mode:horizontal-tb;width:min(1120px,calc(100vw - 32px));height:min(740px,88dvh);max-height:88dvh;padding:0;overflow:hidden;background:#f6f1df;border:1px solid #bb9255;color:#173c3d}#kb-reader::backdrop{background:#041a20dc}.kb-reader-bar{display:flex;align-items:center;justify-content:space-between;height:62px;padding:8px 16px;border-bottom:1px solid #bcaa7d;background:#133840;color:#eec996}.kb-reader-bar>span{font:18px/1 system-ui}.kb-reader-bar button{font:25px/1 system-ui;width:44px;height:44px;border-color:#7d9283;color:#fff}.kb-reader-bar button:hover{background:#294e50}.kb-sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.kb-reader-scroll{writing-mode:vertical-lr;text-orientation:mixed;height:calc(100% - 62px);width:100%;padding:24px;overflow:auto;line-height:1.9;scrollbar-gutter:stable}.kb-reader-scroll h2{font:34px/1.5 var(--mn);margin:0 20px 0 10px;max-height:100%}.kb-reader-scroll h3{font:24px/1.6 var(--mn);margin:0 22px 0 12px;border-left:1px solid #bbaa80;padding-left:12px;max-height:100%}.kb-reader-category{font-size:21px;color:#886439;max-height:100%}.kb-reader-copy{display:contents}.kb-reader-copy p{font-size:25px;line-height:1.9;margin:0 20px;max-height:100%}.kb-reader-sources{max-height:100%}.kb-reader-sources a{display:block;font-size:21px;line-height:1.8;color:#236663;margin:0 12px;max-height:100%}
@media(max-width:900px){.kb-intro{gap:18px}.kb-intro-rule{display:none}.kb-meta{gap:15px}.kb-stats{gap:15px}.kb-archive{display:none}.kb-tools{flex-wrap:wrap}.kb-searchbox{flex-basis:100%;max-width:100%;height:150px}.kb-searchbox textarea{flex:1;width:auto}.kb-list{grid-template-columns:repeat(2,minmax(0,1fr))}.kb-card{height:320px}.kb-summary{display:none}.kb-card strong{height:275px;font-size:26px;max-width:100%}.kb-card-words{padding:16px 12px;gap:0}.kb-title-wrap p{max-width:100px}.kb-stat strong{font-size:23px}}
@media(max-width:600px){#knowledge{padding:28px 14px}.kb-intro{display:block}.kb-title-wrap{height:210px;gap:18px;margin-bottom:20px}.kb-title-wrap h2,.kb-title-wrap p{height:210px}.kb-title-wrap h2{font-size:30px}.kb-title-wrap p{max-width:170px}.kb-meta{display:block}.kb-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.kb-stat{min-width:0}.kb-stat strong{font-size:18px;max-width:100%;white-space:normal;overflow-wrap:anywhere}.kb-stat span{height:145px;font-size:18px}.kb-tools{gap:12px;margin-bottom:18px;padding:14px 0}.kb-category{font-size:20px;height:150px}.kb-searchbox label{font-size:19px}.kb-list{gap:10px}.kb-spine{flex-basis:36px;padding:12px 3px}.kb-topic{font-size:17px;max-width:30px}.kb-card-words{width:calc(100% - 36px);padding:14px 8px}.kb-card strong{font-size:23px;line-height:1.5;max-width:100%;height:275px}.kb-notes{gap:14px}.kb-notes p{font-size:18px;height:220px}.kb-reader-scroll{padding:16px;scrollbar-gutter:auto}.kb-reader-scroll h2{font-size:30px}.kb-reader-copy p{font-size:23px;margin:0 16px}#kb-reader{width:calc(100vw - 16px);height:85svh;max-height:85svh}}
@media(max-width:900px){.kb-archive{display:flex;flex-basis:100%}.kb-archive a{height:180px}.kb-archive small{height:180px}}
.kb-notes{overflow-x:auto}.kb-notes p{flex-shrink:0;max-width:45%}
/* Phone library revision: compact controls and naturally wrapped book covers. */
.kb-search-toggle,.kb-meta-toggle{display:none}
@media(max-width:600px){
 .kb-tools{align-items:flex-start;gap:8px;padding:10px 0;margin-bottom:12px}
 .kb-categories{flex:1 1 0;gap:6px;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:#ad966b #133840;scroll-snap-type:x proximity}
 .kb-category{height:112px;padding:8px;font-size:19px;line-height:1.5;min-width:44px;scroll-snap-align:start}
 .kb-search-toggle{display:block;position:relative;flex:0 0 44px;width:44px;height:44px;font:28px/1 system-ui;border-color:#799287;color:#eed0a1;padding:0}
 .kb-search-toggle[aria-expanded=true]{background:#eac791;color:#12343a}.kb-search-toggle.has-query::after{content:'•';position:absolute;right:3px;top:-5px;font:24px/1 system-ui;color:#f7c976}
 .kb-searchbox{display:none;flex:0 0 100%;height:138px;max-width:100%;padding-top:8px}
 .kb-search-open .kb-searchbox{display:flex}.kb-searchbox textarea,.kb-searchbox label{height:130px}
 .kb-list{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
 .kb-card{height:224px;box-shadow:2px 3px 0 #051a2060;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#8b6431 #f2eedf}
 .kb-spine{flex-basis:24px;padding:10px 2px;gap:0}.kb-number{font-size:15px}.kb-topic{display:none}
 .kb-card-words{width:calc(100% - 24px);padding:12px 8px 24px;gap:0}
 .kb-card strong{height:188px;font-size:23px;line-height:1.45;max-width:none;word-break:normal;overflow-wrap:normal}
 .kb-summary{display:none}.kb-open-mark{font-size:18px;bottom:5px;right:7px}
 .kb-intro{margin-bottom:14px}.kb-title-wrap{height:180px;margin-bottom:14px}.kb-title-wrap h2,.kb-title-wrap p{height:180px}.kb-title-wrap h2{font-size:28px}.kb-title-wrap p{font-size:20px}
 .kb-meta-toggle{display:flex;width:100%;height:48px;align-items:center;justify-content:space-between;padding:8px 12px;border-color:#799287;color:#eac791;font:18px/1.3 system-ui}
 .kb-meta-toggle[aria-expanded=true]{background:#21464b}.kb-meta{display:none}.kb-meta-open .kb-meta{display:block;margin-top:16px}
 .kb-stat span{height:140px;font-size:18px}.kb-stat{gap:8px}
 .kb-archive a,.kb-archive small{height:180px}.kb-archive a{font-size:20px}.kb-archive{margin-top:12px}
 #knowledge{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}
}
.kb-originals{margin-top:28px;padding-top:20px;border-top:1px solid #b2bfb02e;display:flex;gap:18px;min-width:0}.kb-originals[hidden]{display:none}.kb-originals h3{height:210px;font:25px/1.5 var(--mn);color:#ebc58d;margin:0;flex-shrink:0}.kb-originals-list{display:flex;overflow-x:auto;gap:14px;min-width:0;padding:0 0 12px;flex:1}.kb-original{display:flex;gap:14px;height:220px;min-width:170px;max-width:270px;flex:0 0 auto;padding:14px 16px;border:1px solid #799287;text-decoration:none;color:#f1dfbf;background:#133840}.kb-original strong{height:188px;font:24px/1.5 var(--mn);max-width:110px}.kb-original span{height:188px;font-size:20px;line-height:1.5;color:#bdcbc6;max-width:100px;overflow:hidden}.kb-original:hover{background:#234950}
@media(max-width:600px){.kb-originals{gap:12px;margin-top:20px}.kb-originals h3{font-size:22px}.kb-original{min-width:150px;max-width:240px;padding:12px;gap:10px}.kb-original strong{font-size:22px}.kb-original span{font-size:19px}}
.kb-original{max-width:none}.kb-original strong,.kb-original span{max-width:none;overflow:visible;flex-shrink:0}
.kb-original .kb-original-access{font-size:18px;color:#bca986}
.kb-reader-people{display:block;max-height:100%;margin:0 18px}.kb-reader-people[hidden]{display:none}.kb-reader-people button{display:block;height:180px;max-height:100%;font:23px/1.5 var(--mn);padding:10px;border:1px solid #b5a278;margin:0 10px;color:#234b47}.person-readings{max-height:100%;display:block}.person-readings button{display:block;height:220px;max-height:100%;font:22px/1.6 var(--mn);padding:8px;margin:0 8px;color:#345d50;border-color:#bbcbbd}.person-readings button:hover{background:#e4eadc}

#kb-more{display:block;writing-mode:vertical-lr;height:132px;min-width:56px;padding:12px 16px;margin:20px auto 0;color:#f1dfbf;background:#21494c;border:1px solid #799287;font:21px/1.5 var(--mn)}#kb-more[hidden]{display:none}#kb-more:hover{background:#315d5a}

.kb-reader-draft{font-size:17px;color:#82632c;padding:0 10px;border-left:1px solid #c6b891;margin:0 10px;max-height:100%}

/* Arabic numeric runs remain left-to-right and unbroken in vertical prose. */
.kb-numeral{display:inline-block;writing-mode:horizontal-tb;text-orientation:mixed;direction:ltr;unicode-bidi:isolate;white-space:nowrap;font-family:Arial,Helvetica,sans-serif;font-size:.78em;line-height:1.25;vertical-align:middle;font-variant-numeric:tabular-nums}
.kb-stat .kb-numeral,.kb-count .kb-numeral,.kb-number .kb-numeral{font:inherit;color:inherit;height:auto;line-height:inherit}

#kb-previous{margin:1rem;padding:1rem;background:#21494c;color:#f1dfbf;border:1px solid #799287;border-radius:4px;cursor:pointer;min-height:90px}#kb-previous:hover{background:#315d5a}#kb-status:empty{display:none}#kb-status{min-height:2rem;margin:1rem}#knowledge[aria-busy=true] #kb-list{min-height:12rem}#kb-more:disabled,#kb-previous:disabled{opacity:.5;cursor:wait}

#kb-reader-body{display:contents}#kb-reader-demo[hidden]{display:none!important}#kb-reader.has-demo #kb-reader-body{display:block;height:calc(100% - 62px);overflow-y:auto;overflow-x:hidden;writing-mode:horizontal-tb}#kb-reader.has-demo .kb-reader-scroll{height:360px;min-height:260px;border-top:1px solid #c9bc97}#kb-reader-demo{writing-mode:horizontal-tb}#kb-reader.has-demo #kb-reader-demo{border-radius:0;border:0}#kb-reader.has-demo .kb-reader-bar{position:relative;z-index:2}

.kb-map-return{display:grid;place-items:center;width:44px;height:44px;margin-left:auto;margin-right:12px;font:25px/1 sans-serif;color:#eed4a3;border:1px solid #7d9283;border-radius:3px;text-decoration:none}.kb-map-return[hidden]{display:none}

/* A focusable scroll region keeps vertical prose reachable by keyboard. */
.kb-reader-scroll:focus-visible{outline:3px solid #94733f;outline-offset:-4px}
