/** plugin: Tales of the University Theme #1.0 fonts **/
@import url('https://fonts.googleapis.com/css2?family=Girassol&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Alegreya+Sans:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap');

@font-face {
    font-family: "Solbera Imitation";
    src: url("https://benlk.github.io/solbera-dnd-fonts/Solbera Imitation/Solbera Imitation.otf") format("opentype");
    font-weight: normal;
}

@font-face {
  font-family: "Nodesto Caps Condensed";
  src: url("https://benlk.github.io/solbera-dnd-fonts/Nodesto Caps Condensed/Nodesto Caps Condensed.otf") format("opentype");
  font-weight: normal;
}

@font-face {
    font-family: "Bookinsanity";
    src: url("https://benlk.github.io/solbera-dnd-fonts/Bookinsanity/Bookinsanity.otf") format("opentype");
    font-weight: normal;
}

@font-face {
    font-family: "Bookinsanity Bold";
    src: url("https://benlk.github.io/solbera-dnd-fonts/Bookinsanity/Bookinsanity Bold.otf") format("opentype");
    font-weight: bold;
    font-style: normal;
}

/** plugin: Desaturate dead characters #1.1 code **/
:root {
 --dead-grey-value: 1;
}

.character-dead .entity-image {
 filter: grayscale(var(--dead-grey-value));
}

.panel-heading-entity:has(.ra-skull) {
    filter: grayscale(var(--dead-grey-value));
}

[data-defunct="true"] .avatar , [data-dead="true"] .avatar  {
  filter: grayscale(var(--dead-grey-value)); 
}

[data-dead="true"] .avatar::after {
content: "💀";
    pointer-events: none;
    width: 24px;
    position: absolute;
    right: .375rem;
    top: .375rem;
}

.entity-header:has(.entity-char-dead) img {
    filter: grayscale(var(--dead-grey-value));
}

.character-dead img {
	filter: grayscale(var(--dead-grey-value));
}

/** plugin: Tales of the University Theme #1.0 code **/
body, p {
	font-family: "Bookinsanity";
  	--box-background: #F9F0DE;
  	--body-text: #3A3030;
  	font-size: 14px;
}
.sidebar-menu > li > a,
.sidebar-menu > li > span,
.sidebar-submenu > li.subsection > a {
	text-transform: none;
  	font-size: 14px;
	font-family: "Bookinsanity";
}
.sidebar-menu > li > span > i,
.sidebar-menu > li > span > i,
.sidebar-submenu > li.subsection > a > i {
	padding-bottom: 3px;
}

.sidebar-menu > li > a,
.sidebar-menu > li > span,
.sidebar-menu > li > span,
.sidebar-menu > li > span > i {
	/*color: gold !important; */
}

img.note-float-left,
img.note-float-right {
	margin: 0 20px 20px 20px;
  	border: 6px double #553C38;
}
img.note-float-left {
  	float: left;
}

a {
    color: #861200;
}
a:hover, a:active {
	color: #600D00;
}
a.entity-mention, a.mention, a.name {
    font-family: "Bookinsanity";
}

.entity-story-block > .box-entity-entry > .entity-content > p:first-child::first-letter,
.widget-preview > .panel-body > .entity-content > p:first-child::first-letter,
.entity-note > .entity-content > .entity-note-body > p:first-child::first-letter {
    font-size: 80px;
    font-family: "Solbera Imitation";
  	float: left;
  	padding-right: 8px;
  	padding-top: 5px;
    color: #B90000;
}

@media only screen and (max-width: 600px) {
  .entity-story-block > .box-entity-entry > .entity-content > p:first-child::first-letter,
  .widget-preview > .panel-body > .entity-content > p:first-child::first-letter,
  .entity-note > .entity-content > .entity-note-body > p:first-child::first-letter {
  	padding-top: 23px;
  	padding-bottom: 10px;
  }
}

section.sidebar,
aside.main-sidebar-placeholder,
section.sidebar-creator {
    --sidebar-background: #200A06;
  	--campaign-switcher-background: #200A06;
	background-color: #200A06;
}


#dashboard-widget-233110.widget-map > .panel-body,
#dashboard-widget-233143.widget-map > .panel-body {
	height: 400px;
}

.panel-default > .panel-heading,
div.box-entity-entry > div.box-header.with-border,
.entity-story-block > .box-entity-entry,
.box .box-header.with-border {
  border-color: #DDBD93 !important;
  border-width: 2px !important;
}

.box.box-solid {
  box-shadow: initial;
}

.content-wrapper,
.main-footer, div.panel {
  background-color: #F9F0DE;
}
body .main-header .navbar {
  background-color: #EADFC9;
}

div.box-entity-entry > div.box-header > h3.box-title {
  visibility: hidden;
}
div.box-entity-entry > div.box-header > h3.box-title::before {
  content: 'Summary';
  visibility: visible;
}

.entity-note > .box-header > h3.box-title, .box-entity-entry > .box-header > h3.box-title, h3.panel-title {
	content: 'Summary';
}

.entity-note > .box-header > h3.box-title,
.box-entity-entry > .box-header > h3.box-title,
h3.panel-title {
 font-size: 30px;
}

.entity-note > .box-header > h3.box-title {
  font-size: 30px;
}
html body.ab-testing-second div#app.wrapper div#campaign-dashboard.content-wrapper div.campaign-header.no-header div.campaign-header-content div.campaign-content div.campaign-head a.campaign-title {
  background: #861200;
  clip-path: polygon(0% 0%, 100% 0%, calc(100% - 20px) 50%, 100% 100%, 0% 100%);
  padding: 20px 40px 20px 20px;
  color: #f9f0de;
}
.campaign-header .campaign-content .campaign-head a.campaign-title {
  font-size: 48px;
}
section.sidebar-campaign .campaign-block .campaign-head .campaign-name {
  font-size: 29px;
}
section.sidebar-campaign .campaign-block .campaign-head .campaign-name i {
  font-size: 16px;
}
.campaign-header .campaign-content .campaign-head a.campaign-title,
section.sidebar-campaign .campaign-block .campaign-head .campaign-name {
  font-family: 'Nodesto Caps Condensed' !important;
}

h1, h2, h3, h4, h5,
h3.panel-title {
  /* color: #58170D; */
  color: #861200;
  font-family: 'Girassol', cursive !important;
}
h3.panel-title > a {
  font-family: 'Girassol', cursive !important;
}

.content-header h1 {
  font-size: 3.3em;
}
.campaign-header .campaign-content .campaign-head .campaign-title {
  font-size: 42px;
}

p:not(:empty),
p > span:not(:empty),
div.preview:not(:empty),
.post-body > ul > li {
  color: #3A3030;
  font-size: 18px !important;
  line-height: 25px;
  font-family: 'Bookinsanity';
}

.div {
	color: #3A3030;
}

/** plugin: Simplified Timelines #2.3 code **/
.timeline-item {
  margin-bottom: 1em
}

.kanka-entity-timeline .box-widget {
  margin-bottom: 2em
}

.kanka-entity-timeline .entity-sidebar-submenu, .kanka-entity-timeline .entity-sidebar-pins, .kanka-entity-timeline .box-entity-entry {
  visibility: hidden;
  position: absolute;
}

.kanka-entity-timeline .entity-story-block {
  width: 100%;
  margin-top: 1em;
}

/** plugin: Longer Titles in Entity Grids #2 code **/
/* BEGIN Longer Titles in Entity Grids by Salvatos */
/* Undo default overflows and replace with multiline overflow */
.entities-grid div.entity.block:not(.entity-stack) .truncate.h-12 {
	text-overflow: unset;
	white-space: unset;
	height: auto;
	padding-bottom: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: var(--entity-grid-max-lines, 4);
    overflow: hidden;
}
/* More available height for text when no image */
.entities-grid .block.avatar[style*="images/defaults/"] + .truncate.h-12 {
    -webkit-line-clamp: var(--entity-grid-max-lines-noimg, 5);
}
/* Fix padding */
.entities-grid div.entity.block:not(.entity-stack) {
    padding-bottom: 1rem;
}
/* Consistent height for the Back tile in nested pages */
a.entity.block:first-of-type > .bg-box {
	height: auto;
}
/* Mobile view is %-based, tweak accordingly */
@media(max-width:639px) {
    /* Lines of text with & without image */
    .entities-grid .entity.block:not(.entity-stack) .truncate.h-12 {
        -webkit-line-clamp: var(--entity-grid-mobile-max-lines, 3);
        
    }
    .entities-grid .block.avatar[style*="images/defaults/"] + .truncate.h-12 {
        -webkit-line-clamp: var(--entity-grid-mobile-max-lines-noimg, 4);
    }
    /* More suitable padding */
    .entities-grid .entity.block:not(.entity-stack) {
        padding-bottom: 0.6rem;
    }
}
/* END Longer Titles in Entity Grids by Salvatos */

/** plugin: No Fluff #1.2.1 code **/
/* Custom properties to allow easy disabling of individual things */
/*
:root {
    --footer-nofluff: block;
    --boosted-text-nofluff: inline-block;--boosted-rocket-nofluff: inline-block;
    --help-block-nofluff: inline-block;--dead-bottom-margin-nofluff: 15px;
}
*/

/* Removes the footer that usually has links and such */
footer#footer.main-footer {
    display: var(--footer-nofluff, none);
}

/* Removes "Boosted" text and boosted rocket */
strong.text-maroon,
strong.text-maroon ~ p.help-block,
strong.text-maroon ~ br{
    display: var(--boosted-text-nofluff, none);
}
.fas.fa-rocket,
.label.label-default.bg-maroon.pull-right {
    display: var(--boosted-rocket-nofluff, none);
}


/* Removes help blocks */
.help-block {
    display: var(--help-block-nofluff, none);
}

/** plugin: Round Entity Images #1.1 code **/
.entity-header-image :is(.entity-image, picture > img) {
    border-radius: 100%;
}

/** plugin: Back to top #1.0 code **/
.content-wrapper {
  position: relative;
  padding-bottom: 50px;
}

.back-to-top {
  display: block !important;
}

/** plugin: Dashboard: Default Widget Banner #2.0 code **/
/* BEGIN Default Widget Banner by Salvatos */
/* Default image */
.widget {
	--default-banner-100p: url("https://images.unsplash.com/photo-1601137705550-adcd8d863861?fit=crop&w=1200");
	--default-banner-75p: url("https://images.unsplash.com/photo-1601137705550-adcd8d863861?fit=crop&w=1000");
	--default-banner-66p: url("https://images.unsplash.com/photo-1601137705550-adcd8d863861?fit=crop&w=800");
	--default-banner-50p: url("https://images.unsplash.com/photo-1601137705550-adcd8d863861?fit=crop&w=800");
	--default-banner-33p: url("https://images.unsplash.com/photo-1601137705550-adcd8d863861?fit=crop&w=400");
	--default-banner-25p: url("https://images.unsplash.com/photo-1601137705550-adcd8d863861?fit=crop&w=400");
}
/* Merge into a single var */
div.md\:col-span-12 { --default-banner: var(--default-banner-100p) }
div.md\:col-span-9 { --default-banner: var(--default-banner-75p) }
div.md\:col-span-8 { --default-banner: var(--default-banner-66p) }
div.md\:col-span-6 { --default-banner: var(--default-banner-50p) }
div.md\:col-span-4 { --default-banner: var(--default-banner-33p) }
div.md\:col-span-3 { --default-banner: var(--default-banner-25p) }

/* Prepare the link’s flexbox to hold an image */
#campaign-dashboard .w-full:not(.no-default-banner) .widget-header:not(:has(picture)) > a {
	padding: 0;
	flex-wrap: wrap;
	gap: 0;
}
/* Set the background */
#campaign-dashboard .w-full:not(.no-default-banner) .widget-header:not(:has(picture)) > a::before {
	content: "";
	width: 100%;
	background-image: var(--default-banner);
	background-size: cover;
	background-repeat: no-repeat;
    aspect-ratio: 16 / 9;
}
/* Reapply padding to the actual title */
#campaign-dashboard .w-full:not(.no-default-banner) .widget-header:not(:has(picture)) > a > span {
	padding: 1rem 1rem 0 1rem;
}
/* END Default Widget Banner by Salvatos */

/** plugin: Horizontal Timelines #2.3 code **/
/* BEGIN Salvatos Horizontal Timeline */
@media (min-width:768px) {
	/* Set vars */
	.kanka-tag-horizontaltimeline {
		--sht-spine-color: #4494c4;
		--sht-spine-width: 5px;
		--sht-gutter: transparent;
		--sht-slider: #4494c4;
		--sht-marker-bg: var(--timeline-element-border); /* replace default grey markers, e.g. var(--sht-gutter) */
		--sht-marker-color: inherit; /* replace default grey markers */
		--sht-min-width: 300px;
		--sht-ideal-width: 15vw;
		--sht-max-width: 600px;
		--sht-hide-description: block; /* none|block */
	}
	/* UL as grid, flipped for scrollbar at the top */
	.kanka-tag-horizontaltimeline ul.timeline {
		display: grid;
		grid-auto-flow: column;
		justify-content: start;
		transform: rotateX(180deg);
		overflow-x: auto;
		scrollbar-color: var(--sht-slider) var(--sht-gutter);
		padding-bottom: 15px;
		margin: 0;
	}
	.kanka-tag-horizontaltimeline ul.timeline::before {
		content: unset;
	}
	/* LI sizing and timeline spine, content reflipped for scrollbar hack */
	.kanka-tag-horizontaltimeline li[id|="timeline-element"] {
		transform: rotateX(180deg);
		width: clamp(var(--sht-min-width), var(--sht-ideal-width), var(--sht-max-width));
		margin-right: 0;
		margin-bottom: 0;
		border-top: var(--sht-spine-width) solid var(--sht-spine-color);
	}
	/* Branch from spine to event marker */
	.kanka-tag-horizontaltimeline li[id|="timeline-element"]::before {
		display: block;
		position: absolute;
		left: 50%; /* centered? */
		left: 18px;
		top: 0px;
		width: 3px;
		height: 20px;
		background: var(--sht-spine-color);
	}
	/* Element marker position and style */
	.kanka-tag-horizontaltimeline li[id|="timeline-element"] > i {
		left: calc(50% - 13px); /* centered? */
		left: 5px;
		top: 15px;
		background-color: var(--sht-marker-bg);
		color: var(--sht-marker-color);
	}
	/* Date position and style */
	.kanka-tag-horizontaltimeline li[id|="timeline-element"] .timeline-item-head .text-neutral-content {
		position: absolute;
		top: -30px;
		left: 45px;
	}
	/* Timeline element styling */
	.kanka-tag-horizontaltimeline li[id|="timeline-element"] > .timeline-item {
		margin-top: 50px;
		margin-left: 0px;
	}
	/* Hide description if desired */
	.kanka-tag-horizontaltimeline .timeline-item-body:not(.hidden) {
		display: var(--sht-hide-description);
	}
	
	/* Get rid of right sidebar */
	.kanka-tag-horizontaltimeline .entity-sidebar {
		display: none;
	}
	.kanka-tag-horizontaltimeline .entity-main-block {
		grid-column: 2/span 2;
	}
  	/* Restrict dropdown to element’s width, because the transforms mess with the stacking context */
	.kanka-tag-horizontaltimeline .timeline-item .dropdown-menu {
		left: 0;
		right: unset;
		float: unset;
		max-width: 100%;
	}
	.kanka-tag-horizontaltimeline .timeline-item .dropdown-menu > li > a {
		white-space: normal;
	}
	/* Webkit scrollbar patch */
	.kanka-tag-horizontaltimeline ul.timeline::-webkit-scrollbar {
		background-color: var(--sht-gutter);
	}
	.kanka-tag-horizontaltimeline ul.timeline::-webkit-scrollbar-thumb {
		background-color: var(--sht-slider);
	}
}
/* END Salvatos Horizontal Timeline */

/** plugin: External Link Icon and Styling #1.6 code **/
/* BEGIN External Link Icon and Styling by Salvatos */
:root {
	--external-link-color: var(--link-text);
	--external-link-hover-color: var(--link-hover);
	--external-link-font: inherit;
	--external-link-size: inherit;
	--external-link-weight: inherit;
	--external-link-decoration: inherit;
    --intercampaign-link-color: var(--link-text);
	--intercampaign-link-hover-color: var(--link-hover);
}
:is(.entity-content, .note-editable) {
  a[href*="//"]:not([href*="kanka.io"]) {
	color: var(--external-link-color, hsl(var(--p)));
	font-family: var(--external-link-font);
	font-size: var(--external-link-size);
	font-weight: var(--external-link-weight);
	text-decoration: var(--external-link-decoration);
  }
  a[href*="//"]:not([href*="kanka.io"]):hover {
    color: var(--external-link-hover-color, hsl(var(--pf)));
  }
  a[href*="//"]:not([href*="kanka.io"])::after {
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
    content: "\f35d";
    font-size: 9px;
    vertical-align: top;
    margin-left: 2px;
  }
}
/* Inter-campaign mentions (in imported entities) */
.external-mention {
    color: var(--intercampaign-link-color, hsl(var(--p)));
	font-family: var(--external-link-font);
	font-size: var(--external-link-size);
	font-weight: var(--external-link-weight);
	text-decoration: var(--external-link-decoration);
}
.external-mention:hover {
    color: var(--intercampaign-link-hover-color, hsl(var(--pf)));
}
.external-mention::after {
    font-family: "Font Awesome 6 Pro";
	font-weight: 900;
	content: "\f127";
	font-size: 10px;
	margin-left: 3px;
}
/* END External Link Icon and Styling by Salvatos */

