/* The date axis continues from the fossil SVG into the calendar records. */
.ancestry-inline{padding:0;border:0;background:none;color:#735e38;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ancestry-entry-link{cursor:pointer;outline:none}.ancestry-entry-link:hover>rect,.ancestry-entry-link:focus>rect{stroke:#65502e;stroke-width:2}
.origins-page #ancestry-dialog{max-width:710px;padding:34px;overflow-y:auto}
.ancestry-close{position:sticky;float:right;top:0;z-index:2;margin:-20px -8px 0 8px;border:0;background:#f9faf2;color:#637553;font-size:28px;cursor:pointer}
#ancestry-title{font:400 43px/1.1 var(--serif);margin:15px 0}
#ancestry-dialog>.eyebrow{font-size:9px;color:#8c7650}
.ancestry-intro{font-size:13px;line-height:1.8;color:#65765b;margin-bottom:25px}
.ancestry-proposal{border-top:1px solid #d6decb}.ancestry-proposal:last-child{border-bottom:1px solid #d6decb}
.ancestry-proposal>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 0;font:400 23px/1.2 var(--serif);color:#435c37}
.ancestry-proposal>summary::-webkit-details-marker{display:none}
.ancestry-proposal summary small{display:block;font:400 10px/1.7 var(--sans);color:#7b866b;margin-top:8px}
.ancestry-proposal summary b{font:400 23px var(--sans);color:#8b976f}.ancestry-proposal[open] summary b{transform:rotate(45deg)}
.ancestry-proposal-body{padding:0 0 24px}.ancestry-proposal-body p{font-size:12px;line-height:1.85;color:#5f7253}
.ancestry-proposal-body .proposal-date{font-size:9px;letter-spacing:.5px;color:#89744f}
.ancestry-proposal .taxon-figure{margin:20px 0}.ancestry-proposal .visual-image{max-height:260px}
.proposal-sources{display:flex;flex-direction:column;gap:12px;font-size:11px;line-height:1.6;margin-top:20px}
.proposal-sources a{text-decoration:underline;text-underline-offset:3px}.proposal-sources small{font-size:10px;color:#817557}
.ancestry-footnote{font-size:10px;line-height:1.8;color:#78866a;margin:23px 0}.ancestry-download{font-size:11px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.origins-page #ancestry-dialog{padding:30px 20px;width:calc(100% - 24px)}.ancestry-proposal>summary{font-size:21px}#ancestry-title{font-size:36px}}
.timeline-scroll{border-bottom:0;scrollbar-width:none}
.timeline-scroll::-webkit-scrollbar{display:none}
.calendar-continuation{--axis:4.933333%;position:relative;max-width:1500px;margin:0 auto;background:linear-gradient(90deg,#fafbf5 0 66%,#f4f6ed 66% 86%,#f1ece2 86%);padding:0 0 32px;scroll-margin-top:150px}
.calendar-continuation:before{content:'';position:absolute;left:var(--axis);top:0;bottom:74px;width:1px;background:#879b76}
.calendar-seam,.calendar-node{position:relative;padding:30px 0 36px;min-height:130px}
.calendar-seam>div,.calendar-node-body{margin-left:calc(var(--axis) + 32px);max-width:calc(63% - var(--axis) - 50px)}
.calendar-year{position:absolute;left:0;top:35px;width:calc(var(--axis) - 12px);text-align:right;font:400 19px/1.15 var(--serif);color:#7d7358;overflow-wrap:normal}
.calendar-seam:before,.calendar-node:before,.calendar-continuation .story-milestones>li:before{content:'';position:absolute;left:calc(var(--axis) - 4px);top:39px;width:9px;height:9px;border:2px solid #8d9f79;border-radius:50%;background:#f8f9f0;z-index:1}
.calendar-seam .eyebrow{font-size:9px;letter-spacing:1.5px;color:#8c9779}
.calendar-seam p{font:400 17px/1.65 var(--serif);color:#7b876a;margin:12px 0 0}
.calendar-continuation .story-milestones{display:block;margin:0;padding:0;list-style:none}
.calendar-continuation .story-milestones>li{position:relative;border:0;padding:0;min-height:152px}
.calendar-continuation .story-milestones>li:before{border-color:#b59a6c}
.calendar-continuation .story-milestones>li:after{content:'';position:absolute;left:var(--axis);top:43px;width:25px;height:1px;background:#b6bea6;pointer-events:none}
.calendar-continuation .story-milestone{display:block;position:relative;padding:28px 0 28px;margin:0;min-height:152px;scroll-margin-top:160px}
.calendar-continuation .story-date{position:absolute;top:34px;left:0;width:calc(var(--axis) - 12px);text-align:right}
.calendar-continuation .story-date strong{font-size:20px;line-height:1.2}
.calendar-continuation .story-date>span{font-size:9px;margin-top:4px}
.calendar-continuation .story-milestone-body{margin-left:calc(var(--axis) + 32px);max-width:calc(63% - var(--axis) - 50px);padding-bottom:21px;border-bottom:1px solid #e3e6d8}
.calendar-continuation .story-milestone h4{font-size:clamp(23px,2.2vw,30px);margin:9px 0 12px;line-height:1.2}
.calendar-continuation .story-milestone p{font-size:13px;line-height:1.7;max-width:620px}
.calendar-continuation .story-open{justify-content:flex-start;gap:14px;font-size:10px}
.story-date-context{display:block;font-size:9px;letter-spacing:.9px;text-transform:uppercase;color:#938060;line-height:1.7}
.calendar-continuation .story-milestone:focus-visible{outline:2px solid #49664b;outline-offset:-3px}
.calendar-continuation .story-milestone:hover .story-milestone-body{border-color:#9eae89}
.calendar-continuation .story-milestone:target .story-milestone-body{background:#eef2e5}
.human-thread{position:absolute;left:66.93333%;top:0;bottom:74px;width:3px;background:#648b77;opacity:.65}
.human-thread span{position:sticky;top:170px;display:block;writing-mode:vertical-rl;padding:28px 8px;font-size:10px;letter-spacing:1.4px;color:#416953;white-space:nowrap}
.tradition-thread{position:absolute;left:72%;width:23%;top:0;bottom:74px;padding:24px 18px;border-left:3px solid #8c9b70;background:linear-gradient(180deg,transparent,#e6ebd9 100px,#e6ebd9);color:#5a7250;display:flex;flex-direction:column;gap:20px}
.tradition-thread:before{content:'';position:absolute;left:-3px;top:0;width:3px;height:50px;background:linear-gradient(180deg,#fafbf5,#8c9b70)}
.tradition-thread strong{font:400 clamp(22px,2.2vw,31px)/1.2 var(--serif);max-width:230px}
.thread-open,.thread-today{font-size:9px;line-height:1.6;letter-spacing:.4px}
.thread-description{font-size:12px;line-height:1.8;max-width:220px}
.thread-cta{font-size:10px;text-decoration:underline;text-underline-offset:4px}
.thread-today{margin-top:auto}
.tradition-thread:hover{border-color:#536e45;color:#3d5935}
.modern-node{padding-top:40px}
.modern-node:before{top:49px}
.modern-node .calendar-year{top:45px}
.calendar-node-body>.eyebrow{font-size:9px;letter-spacing:1.4px;color:#82926c;line-height:1.7}
.calendar-node-body h3{font:400 clamp(24px,2.5vw,32px)/1.2 var(--serif);margin:12px 0}
.calendar-node-body p{font-size:13px;line-height:1.8;color:#78876a;margin:10px 0 15px}
.calendar-link{display:block;font-size:11px;text-decoration:underline;text-underline-offset:4px;margin:12px 0;line-height:1.7}
.today-node .calendar-year{font-size:16px}
.today-node .calendar-node-body small{display:block;font-size:10px;line-height:1.7;color:#8b947e}
.timeline-tools{padding-top:25px;padding-bottom:10px}
.timeline-tools .era-directory{margin:0}
.world-reference{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:16px}
.world-reference>summary{padding:22px 0;font-size:13px;color:#647b51;cursor:pointer}
.world-reference .world-context{padding-top:8px;padding-bottom:25px}
.timeline-canvas #date-axis{stroke:#879b76;stroke-width:1}
.timeline-canvas .axis-continuation{font-size:9px;fill:#69835b}
.calendar-seam .survival-question{font:400 12px/1.8 var(--sans);margin-top:18px;color:#647553}
.survival-question strong{display:block;font:400 21px/1.3 var(--serif);margin-bottom:7px;color:#4e6843}
.timeline-account{scroll-margin-top:160px}
.timeline-account>summary{cursor:pointer;list-style:none;height:auto}
.timeline-account>summary::-webkit-details-marker{display:none}
.timeline-account .story-milestone-body{display:block}
.account-preview{display:flex;align-items:center;gap:17px;margin:12px 0 14px}
.account-thumbnail{width:86px;height:94px;object-fit:contain;background:#f0eddf;border:1px solid #dfddce;flex-shrink:0}
.account-preview-copy{display:block;min-width:0}
.account-title{display:block;font:400 clamp(22px,2.1vw,29px)/1.2 var(--serif);color:var(--ink);margin-bottom:10px}
.account-excerpt{display:block;font-size:12px;line-height:1.7;color:#68755f}
.account-toggle{font-size:20px;line-height:1;margin-left:auto}
.account-close-label{display:none}
.timeline-account[open] .account-open-label{display:none}
.timeline-account[open] .account-close-label{display:inline}
.timeline-account[open] .account-toggle{transform:rotate(45deg)}
.timeline-account>summary:hover .account-title{text-decoration:underline;text-underline-offset:4px}
.timeline-account-content{margin:0 calc(37% + 18px) 28px calc(var(--axis) + 32px);padding:0 0 25px;border-bottom:1px solid #d6ddc9}
.timeline-account-content>p{font-size:13px;line-height:1.85;color:#5d7050;margin:14px 0}
.timeline-account-content .event-context{font-size:11px;color:#7a806b}
.timeline-account-content .event-type{line-height:1.8}
.timeline-account-content .event-sources{overflow-wrap:anywhere;line-height:1.8}
.reported-traits h5{font:400 20px var(--serif);margin:20px 0 10px}
.reported-traits ul{padding-left:18px;margin:0;font-size:12px;line-height:1.9;color:#68775b}
.timeline-account:target .story-milestone-body{background:#eef2e5}
@media(max-width:1100px){.timeline-account-content{margin-right:calc(35% + 2px)}}
@media(max-width:700px){.timeline-account{scroll-margin-top:180px}.timeline-account-content{margin-left:calc(var(--axis) + 19px);margin-right:45px}.account-preview{gap:12px;align-items:flex-start}.account-thumbnail{width:65px;height:84px}.account-title{font-size:23px}.account-excerpt{font-size:11px;line-height:1.7}.calendar-continuation .timeline-account .story-date strong{font-size:14px}.calendar-continuation .timeline-account .story-date>span{font-size:8px}.timeline-account-content>p{font-size:12px}.calendar-seam .survival-question{font-size:11px}.survival-question strong{font-size:20px}}
@media(max-width:400px){.account-preview{display:block}.account-thumbnail{float:right;margin:0 0 8px 10px;width:59px;height:76px}.account-preview:after{content:'';display:block;clear:both}.account-title{font-size:22px}}
@media(max-width:1100px){.calendar-continuation{--axis:54.2667px}.calendar-continuation .story-date strong{font-size:18px}.calendar-year{font-size:17px}.calendar-seam>div,.calendar-node-body,.calendar-continuation .story-milestone-body{max-width:calc(65% - var(--axis) - 32px)}.tradition-thread{left:74%;width:23%;padding:24px 12px}.human-thread{left:736.267px}.thread-description{font-size:11px}}
@media(max-width:700px){.calendar-continuation{background:#fafbf5;scroll-margin-top:180px}.calendar-continuation:before{bottom:85px}.calendar-seam>div,.calendar-node-body,.calendar-continuation .story-milestone-body{margin-left:calc(var(--axis) + 19px);max-width:none;margin-right:45px}.calendar-continuation .story-milestone-body{padding-bottom:22px}.calendar-continuation .story-milestone{padding:23px 0;min-height:160px}.calendar-continuation .story-milestone h4{font-size:25px}.calendar-continuation .story-milestone p{font-size:12px}.calendar-continuation .story-milestones>li:after{width:15px}.calendar-continuation .story-date{top:30px;width:calc(var(--axis) - 9px)}.calendar-continuation .story-date strong{font-size:17px}.story-date-context{font-size:8px;letter-spacing:.5px}.calendar-continuation .story-milestones>li:before{top:35px}.calendar-continuation .story-milestones>li:after{top:39px}.calendar-year{font-size:16px;width:calc(var(--axis) - 9px)}.calendar-seam{min-height:150px;padding-top:29px}.calendar-seam p{font-size:16px}.calendar-seam .eyebrow{font-size:8px;letter-spacing:.8px;line-height:1.7}.human-thread{display:none}.tradition-thread{left:auto;right:9px;top:0;width:22px;padding:20px 2px;border-left-width:2px;gap:0;align-items:center;bottom:85px}.tradition-thread:before{left:-2px;width:2px}.tradition-thread strong{position:sticky;top:180px;writing-mode:vertical-rl;font:400 11px/1.5 var(--sans);letter-spacing:.5px;white-space:nowrap;padding:12px 0}.tradition-thread strong br{display:none}.thread-open,.thread-description,.thread-cta,.thread-today{display:none}.today-node .calendar-year{font-size:13px}.calendar-node-body p{font-size:12px}.calendar-continuation .story-open{font-size:9px;gap:8px}.calendar-node-body h3{font-size:25px}.calendar-node-body>.eyebrow{font-size:8px;letter-spacing:.8px}.world-reference>summary{font-size:12px}}

/* The calendar shares the same canvas and exact date axis as the fossil chart. */
.calendar-continuation{--axis:var(--date-axis,288px);--account-width:min(650px,calc(100vw - 110px));width:100%;max-width:none;margin:0;background:linear-gradient(90deg,#eee8dc 0 210px,#f8f9f0 210px 310px,#fafbf5 310px)}
.calendar-seam>div,.calendar-node-body,.calendar-continuation .story-milestone-body{margin-left:calc(var(--axis) + 32px);margin-right:0;width:var(--account-width);max-width:var(--account-width)}
.timeline-account-content{margin:0 0 28px calc(var(--axis) + 32px);width:var(--account-width);max-width:var(--account-width)}
.calendar-year,.calendar-continuation .story-date{left:210px;width:calc(var(--axis) - 222px)}
.human-thread{display:block;left:var(--human-axis,314px);width:3px}.human-thread span{font-size:8px;padding-left:3px;padding-right:3px}
.tradition-thread{left:14px;right:auto;width:180px;padding:24px 14px;bottom:74px;border-left-width:3px;gap:20px;align-items:stretch}
.tradition-thread:before{left:-3px;width:3px}.tradition-thread strong{position:static;writing-mode:horizontal-tb;font:400 25px/1.2 var(--serif);letter-spacing:0;white-space:normal;padding:0}
.tradition-thread strong br{display:initial}.thread-open,.thread-description,.thread-cta,.thread-today{display:block}
@media(max-width:700px){.calendar-seam>div,.calendar-node-body,.calendar-continuation .story-milestone-body{margin-left:calc(var(--axis) + 25px)}.timeline-account-content{margin-left:calc(var(--axis) + 25px)}.human-thread span{display:none}.calendar-year,.calendar-continuation .story-date{left:210px;width:calc(var(--axis) - 219px)}.tradition-thread{bottom:85px}.calendar-continuation .story-milestone h4{font-size:25px}}

.calendar-continuation{--content-start:max(calc(var(--axis) + 32px),calc(var(--human-axis) + 20px));--account-width:min(650px,calc(100vw - 140px))}
.calendar-seam>div,.calendar-node-body,.calendar-continuation .story-milestone-body,.timeline-account-content{margin-left:var(--content-start)}
