.family-book-shell{position:relative;display:flex!important;flex-direction:column;height:100%!important;min-height:0!important;background:#f7f3e7;overflow:hidden!important}.book-tools{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:5px;padding:8px;background:#fffdf7;z-index:3;box-shadow:0 2px 10px #0001}.book-tools button,.book-tools select,.book-tools input{border:1px solid #d5c9b9;background:#fff;border-radius:5px;padding:5px 8px;color:#543d30}.book-tools input{width:150px}.book-tools [role=status]{font-size:12px;align-self:center;color:#776653}.book-scroll{position:relative;overflow:hidden;flex:1;min-height:0;touch-action:none;cursor:grab;outline:none}.book-scroll:active{cursor:grabbing}.book-paper{position:absolute;left:0;top:0;transform-origin:0 0;box-sizing:content-box;background:#faf7ed;font-family:KaiTi,STKaiti,serif;user-select:none}.book-title{position:absolute;left:20px;top:48px;writing-mode:vertical-rl;font-size:24px;letter-spacing:4px;max-height:600px}.book-rows{position:absolute;inset:0}.book-generation{position:absolute;writing-mode:vertical-rl;background:#693934;color:#fff1d2;padding:9px 4px;border:4px double #d6b996;letter-spacing:2px;font-size:15px;max-height:150px}.book-family{position:absolute;height:144px;display:flex;gap:4px;align-items:flex-start;background:#faf7ed}.book-person{position:relative;flex:0 0 30px;width:30px;height:144px;padding:0;border:0;margin:0;background:transparent;cursor:pointer;font-family:inherit;color:#211b16}.book-person strong{position:absolute;left:2px;top:20px;writing-mode:vertical-rl;font-size:21px;line-height:26px;white-space:nowrap}.book-dot{position:absolute;left:0;top:-10px;width:24px;text-align:center;height:20px;line-height:20px;font-size:19px;background:#faf7ed}.book-spouse{position:relative;flex:0 0 24px;width:24px;height:144px;padding:0;border:0;background:transparent;cursor:pointer;color:#534333;font-family:inherit}.book-spouse span{position:absolute;top:20px;left:5px;font-size:11px}.book-spouse strong{position:absolute;top:40px;left:3px;writing-mode:vertical-rl;font-size:16px;font-weight:normal;line-height:20px;white-space:nowrap}.book-summary{padding-top:20px;box-sizing:border-box;writing-mode:vertical-lr;height:144px;flex:1;min-width:0;font-size:13px;line-height:20px;overflow:hidden}.book-lines{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}.book-lines path{stroke:#7a6355;stroke-width:1;fill:none}.book-person:hover,.book-spouse:hover,.book-hit{outline:2px solid #a97b43;background:#f5e9ce}.book-person:focus-visible,.book-spouse:focus-visible{outline:3px solid #226b5d}.family-tree-section:has(.family-book-shell) .family-canvas-feature-tabs{top:calc(var(--book-tools-height,48px) + 12px);bottom:auto;right:16px}.family-tree-section:has(.family-book-shell){min-height:0!important}@media(max-width:600px){.book-tools input{width:110px}.book-tools [role=status]{width:100%}}
/* End of compact pan and zoom canvas stylesheet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  */

.book-generation-control{display:flex;align-items:center;gap:4px;font-size:13px;white-space:nowrap}.book-tools .book-generation-control input{width:52px}.book-summary{display:flex;writing-mode:horizontal-tb;gap:6px;flex:none;overflow:visible}.book-field{flex:none;height:124px;position:relative}.book-field-label{display:block;height:24px;font-size:11px;color:#796653;line-height:20px;white-space:nowrap}.book-field-value{display:block;writing-mode:vertical-lr;height:98px;font-size:13px;line-height:20px;overflow:hidden;overflow-wrap:anywhere}.book-continuation{position:absolute;border:0;background:#faf7ed;color:#825d32;font:11px sans-serif;padding:2px;cursor:pointer;white-space:nowrap}.book-continuation:hover{text-decoration:underline}

/* Right-to-left screen layout: reverse columns without reflecting text glyphs. */
.book-family{flex-direction:row-reverse}.book-summary{flex-direction:row-reverse}.book-field-value{writing-mode:vertical-rl}
.book-title{width:76px;box-sizing:border-box;max-height:none;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;padding:24px 12px;letter-spacing:2px;color:#17130f;font-family:SimSun,'Songti SC',serif}
.book-title strong{font-weight:900;white-space:nowrap;line-height:1.25;writing-mode:vertical-rl}.book-title svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:#82472e;stroke-width:1.5}.book-title svg path+path{stroke-width:.8}

/* Keep the parent stem visible below the name instead of covering it with the family hit area. */
.book-family{background:transparent}.book-lines path{stroke:#715c4f;stroke-width:1.15}

.book-search{position:relative;display:flex;gap:5px}.book-search-results{position:absolute;left:0;top:calc(100% + 6px);width:360px;max-width:calc(100vw - 32px);max-height:340px;overflow:auto;background:#fffdf7;border:1px solid #d5c9b9;border-radius:6px;box-shadow:0 6px 20px #0002;z-index:10}.book-search-results[hidden]{display:none}.book-search-heading{padding:10px;color:#776653;font-size:13px}.book-tools .book-search-result{display:block;width:100%;text-align:left;border:0;border-top:1px solid #eee5d7;border-radius:0;padding:10px 12px;cursor:pointer}.book-search-result strong,.book-search-result small{display:block;white-space:normal;overflow-wrap:anywhere}.book-search-result small{margin-top:5px;color:#776653;line-height:1.6}.book-search-result:hover,.book-search-result:focus-visible{background:#f5e9ce;outline:2px solid #a97b43;outline-offset:-2px}

@media(max-width:767px),(hover:none) and (pointer:coarse){.book-tools [data-action="print"],.family-canvas-toolbar [data-tool="print"]{display:none!important}}

.branch-mobile-style{display:none}@media(max-width:760px){.branch-mobile-style{display:block;min-width:0;max-width:145px;width:125px;border:1px solid #d5c9b9;background:#fff;color:#543d30;border-radius:6px;padding:7px 4px;font-size:13px}.branch-subnav-actions{display:flex;align-items:center;gap:6px}.branch-subnav{gap:6px}.book-tools>select,.family-canvas-toolbar>[data-tool=direction]{display:none!important}.book-tools [role=status]{display:none}}

@media(max-width:760px){.family-canvas-toolbar .family-canvas-search{display:contents}.family-canvas-toolbar .family-canvas-search>input{flex:1 1 70px;width:0!important;min-width:50px;box-sizing:border-box;border-right:1px solid #cfc8bc;border-radius:3px!important}.family-canvas-toolbar .family-canvas-search>[data-tool="search"]{border-radius:3px!important}}

@media(max-width:760px){.family-canvas-toolbar{flex-wrap:nowrap!important;gap:3px;padding:5px}.family-canvas-toolbar button{flex:none;white-space:nowrap;padding-left:5px!important;padding-right:5px!important;font-size:12px!important}.family-canvas-toolbar .family-canvas-generation-control{flex:none;white-space:nowrap;font-size:12px;gap:2px}.family-canvas-toolbar .family-canvas-generation-control input{width:34px!important;min-width:0;padding:2px!important}.family-canvas-toolbar .family-canvas-search>input{font-size:12px;padding-left:5px;padding-right:3px}}
