/* {{pp-template}} */
/*
border:#A3BFB1 (H150 S15 V75);
background:#F5FFFA (H150 S4 V100);
headers:#CEF2E0 (H150 S15 V95);
accent:#E6FFF2 (H150 S10 V100) 
*/
.contentsPage__title {
    border-bottom: 2px solid #333;
    font-size: 1.8em;
    padding: 0.5em 0;
    text-align: center;
    font-family: Arial, sans-serif;
    font-weight: bold;
}

.contentsPage__toc {
    padding: 1em;
}

.contentsPage__intro {
    position: relative;
    padding: 1.5em 1em;
}

.contentsPage__section {
    padding: 1.5em 1em;
    margin-bottom: 20px;
    border: 1px solid #ddd;
    background-color: var(--background-color-base, #fff);
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}

.contentsPage__heading {
    position: relative;
    border-bottom: 2px solid #333;
    text-align: center;
    padding: 0.5em 0;
}

.contentsPage__heading h2 {
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-size: 1.3em;
    margin: 0;
}

.contentsPage__xlink {
    font-size: 0.9em;
    white-space: nowrap;
    display: block;
    margin-top: 10px;
}

@media (min-width: 720px) {
    .contentsPage__xlink {
        display: inline;
    }
}

.contentsPage__sectionlinks {
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 0.85em;
}

.contentsPage__notes {
    padding: 1em;
    border-top: 1px solid #ddd;
}

.contentsPage__notes:empty {
    display: none;
}

.contentsPage--type {
	background-color: #f5fffa;
    border: 1px solid #a3bfb1;
}

.contentsPage--type .contentsPage__title {
    background-color: #cef2e0;
    border-color: #a3bfb1;
}

.contentsPage--type .contentsPage__intro {
    background-color: #e6fff2;
}

.contentsPage--type .contentsPage__heading {
    background-color: #cef2e0;
    border-color: #a3bfb1;
}

.contentsPage--type .contentsPage__notes {
    border-color: #a3bfb1;
}

.contentsPage--topic {
    background-color: #f5faff;
    border: 1px solid #a3b1bf;
}

.contentsPage--topic .contentsPage__title {
    background-color: var(--background-color-base, #fff);
    border-color: #a3b1bf;
}

.contentsPage--topic .contentsPage__intro {
    background-color: #e6f2ff;
}

.contentsPage--topic .contentsPage__heading {
    background-color: #cee0f2;
    border-color: #a3b1bf;
}

.contentsPage--topic .contentsPage__notes {
    border-color: #a3b1bf;
}

@media screen {
	/* values in hsl space until hwb() is supported in TemplateStyles */
	/* didn't flip borders because it's not painfully necessary */
	
	html.skin-theme-clientpref-night .contentsPage--type,
	html.skin-theme-clientpref-night .contentsPage--topic {
		background-color: hsl(150, 100%, 2%);
	}
	
	html.skin-theme-clientpref-night .contentsPage--type .contentsPage__title,
	html.skin-theme-clientpref-night .contentsPage--type .contentsPage__heading {
	    background-color: hsl(150, 58.06%, 13%);
	}
	
	html.skin-theme-clientpref-night .contentsPage--type .contentsPage__intro,
	html.skin-theme-clientpref-night .contentsPage--topic .contentsPage__intro {
	    background-color: hsl(148.8, 100%, 5%);
	}
	
	html.skin-theme-clientpref-night .contentsPage--topic .contentsPage__heading {
	    background-color: hsl(210, 58.06%, 13%);
	}
}

@media screen and (prefers-color-scheme: dark) {
	/* values in hsl space until hwb() is supported in TemplateStyles */
	/* didn't flip borders because it's not painfully necessary */
	
	html.skin-theme-clientpref-os .contentsPage--type,
	html.skin-theme-clientpref-os .contentsPage--topic {
		background-color: hsl(150, 100%, 2%);
	}
	
	html.skin-theme-clientpref-os .contentsPage--type .contentsPage__title,
	html.skin-theme-clientpref-os .contentsPage--type .contentsPage__heading {
	    background-color: hsl(150, 58.06%, 13%);
	}
	
	html.skin-theme-clientpref-os .contentsPage--type .contentsPage__intro,
	html.skin-theme-clientpref-os .contentsPage--topic .contentsPage__intro {
	    background-color: hsl(148.8, 100%, 5%);
	}
	
	html.skin-theme-clientpref-os .contentsPage--topic .contentsPage__heading {
	    background-color: hsl(210, 58.06%, 13%);
	}
}