*{box-sizing:border-box;margin:0;padding:0;text-rendering: geometricPrecision;font-family: inherit;outline:none;}

html{background:#333;}
body {font-family: "Poly", serif;font-optical-sizing: auto; font-style: normal; line-height:1.4;background: linear-gradient(0deg, #fff, #fafafa);font-size:1.4rem;display:flex;min-height:100vh;margin:0 auto;flex-direction:column;}

main{flex:1 0 auto;}
.tag {display:block;padding:.5em;margin-bottom:1em;border:1px solid;line-height:1;}
.pop {max-height: 0;margin:-.5rem;overflow:hidden;}
h1,h2,h3,h4,h5 {line-height:1.2; margin:.5rem 0;}
nav{background:rgba(255,255,255,.95);border-bottom:1px solid rgba(211,87,66,.25);padding:0 1rem;}
nav ul a,nav .brand-logo{color:#d35742;border:0;font-size:1.5rem;left:0!important;transform:none!important;}
nav .button-collapse{float:right!important;color:#d35742;display:block !important;}
footer{}
a{color:#d35742;}
.sb a{border:none;background:#d35742;border-radius:.3rem;padding:.2rem;color:#fff;display:inline-block;margin-top:.5rem;font-size:100%;text-align:center;}
/*p,.collapsible-body p {padding:1rem !important;}*/
ul.lv li a {padding:1rem;display:block;}
ul.lv li a.pgn {padding-right:3em;}
ul.lv li a.pgn:after {content: attr(data-pgn);position: absolute;right:1em;font-size:75%}

.yyr {display:inline-block;width:3rem;font-size:75%;}
.side-nav a{font-size: inherit;}
footer .sb{text-align:right;}
img {width:100%;}
iframe {border:0;width: 100%;height:50vw;}
.sharer a {display:inline-block;padding:.5em;border:1px solid #eee;margin-right:.5em;}

.cover {aspect-ratio:4/3;background:#def;display: flex;flex-direction: column;}
.cover .header {font-family:arial;font-size:12px;text-align: center;}
.cover .center {font-size:2.5vh;text-align:left;flex:1;max-height: 20;overflow: hidden;}
.cover .footer {font-family:arial;font-size:12px;text-align: center}
.char { color: transparent;display:inline-block;max-height:2px;overflow: hidden;}
.char.visible {color: inherit;max-height:unset  ;display:unset}
#cursor {display: inline-block; width: 2px;height: 2em;background-color: currentColor;margin-left: 1em;vertical-align: text-bottom;  animation: blink 0.75s step-end infinite;}
@keyframes blink {from, to { opacity: 1; } 50% { opacity: 0; }}

/*.hp.container {position:relative;margin-top:1em;line-height:1;}
.hp.container .quote {position:absolute;color:#fff;top:1rem;left:1rem;right:1rem;bottom:3rem;overflow:auto;font-size:500%;}
.hp.container .author {position:absolute;color:#fff;bottom:1em;left:1em;color:#fff;}*/
.h1{font-size:240%;margin:0 0 .5rem 0;line-height: 1}
.h2{font-size:160%;margin:0 0 .5rem 0;line-height: 1}
.h3{font-size:140%;margin:0 0 .5rem 0;line-height: 1}
.h4{font-size:100%;margin:0 0 .5rem 0;line-height: 1}
.h5{font-size:90%;margin:0 0 .5rem 0;line-height: 1}
.h6{font-size:80%;margin:0;}
.hp.container .quote {font-size:200%;}

h1{font-size:240%;margin:0 0 .5rem 0;line-height: 1}
h2{font-size:160%;margin:0 0 .5rem 0;line-height: 1}
h3{font-size:140%;margin:0 0 .5rem 0;line-height: 1}
h4{font-size:100%;margin:0 0 .5rem 0;line-height: 1}
h5{font-size:90%;margin:0 0 .5rem 0;}
h6{font-size:80%;margin:0;}

.blocks a:before, a.print:before{content:"";position:absolute;width:20px;height:20px;background:url(/lib/gfx/gfx.svg) no-repeat;margin-left:-30px;scale:.75;}
.blocks a, a.print{padding-left:30px;display:block;}
.blocks a.url:before{background-position:-60px -20px;margin-top: 0.3em;}
.blocks a.dwl:before{background-position:-60px -40px;margin-top: 0.3em;}
.blocks a.vid:before{background-position:-60px -80px;margin-top: 0.3em;}

.container {padding: 1rem ;max-width: 1280px;width: unset;}

  .vv {
	position: relative;
}

.vv:before {
	position: absolute;
	content: attr(data-title);
	font-size: 75%;
	left: 0;
}
.vv.active {background: #6cffd27d;}
.tc:has(.vv.active) {	grid-template-rows: 2.5em 1fr;}