/* 1. Use a more-intuitive box-sizing model */
*, *::before, *::after {
  box-sizing: border-box;
}

/* 2. Remove default margin */
*:not(dialog) {
  margin: 0;
}

/* 3. Enable keyword animations */
@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
  }
}

body {
  /* 4. Increase line-height */
  line-height: 1.15;
  /* 5. Improve text rendering */
  -webkit-font-smoothing: antialiased;

  height: 100%;
}

/* 8. Avoid text overflows */
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}

/* 9. Improve line wrapping */
p {
  text-wrap: pretty;
}
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

/*
  10. Create a root stacking context
*/
#root, #__next {
  isolation: isolate;
}


.trait-container {
	position: relative;
	padding-left: 2px;
	padding-right: 2px;
	top: 10px; /* You'll probably have to edit this */
	left: -30px;
	z-index: 1;
	display: flex;
	width: 180px;
}

.trait-area {
	width: 100%;
	height: 238px; /* Might have to adjust here */
	font-size: 8pt;
	font-family: var(--traits-font, serif);
	text-align: left;
	overflow-y: auto;
	background-color: var(--field-bkgnd, light-gray);
	border: 2px solid var(--pin-stripes, black);
	border-radius: 3px;
	cursor: pointer;
	scrollbar-color: var(--pin-stripes, black) var(--primary, #AAAAAA);
	scrollbar-width: thin;
	word-wrap: break-word;
	padding: 0px 3px;
	margin: 3px 0px;
	position: relative;
	z-index: 1;
}

.trait-area u {
	text-decoration-color: var(--text-hlit);
	/*text-decoration: underline;*/
}

::-webkit-scrollbar {
	width: 2px;
}

::-webkit-scrollbar-button {
	display: none;
}

::-webkit-scrollbar-track {
	background: transparent;
}

::-webkit-scrollbar-thumb {
	background: var(--pin-stripes, black);
}

.dc-tag {
	font-size: 7pt;
	position: absolute;
	bottom: 1px;
	left: 4px;
	color: var(--pin-stripes);
}

.upkeep-label {
	position: absolute;
	bottom: 1px;
	right: 5px;
	text-align: right;
	font-size: 8pt;
	color: var(--text-hlit-2);
}
.might-label {
	position: absolute;
	bottom: 1px;
	left: 5px;
	text-align: left;
	font-size: 8pt;
	color: var(--text-hlit-2);
}

.pseudo-border {
	float: left;
	display: block;
	width: 33px;
	height: 66px;
	background-color: var(--pin-stripes, black);
	position: absolute;
	bottom: 0px;
	left: 0px;
}

.card {
	width: 2.5in; /* 2.5 x 96 - border-width */
	height: 3.5in; /* 3.5 x 96 - border-width */
	min-width: 2.5in;
	min-height: 3.5in;
	border-style: solid;
	border-width: 6px;
	border-radius: 8px;
	border-color: var(--borders, black);
	margin: 1px 1px 0px 0px;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	/*background-color: var(--primary);*/
	background-image: var(--bkgnd-img);
	background-size: cover;
	background-position: center right;
	position: relative;
	color: var(--text-stnd);
}

@media print {
	body {
		background-color: white;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
	justify-content: cneter;
	
	.spacer {
    	display: none;
    }
	
	.card {
		length: 3.5in;
		width: 2.5in;
	}
}

@media (prefers-color-scheme: dark) {
    body {
        background-color: #34302e;
        color: #ccc;
    }
}

@page {
	size: landscape;
	margin-right: auto;
	margin-left: auto;
}

#spell-point {
	text-align: right;
}

html {
	font-family: var(--main-font, serif);
	color: var(--text-stnd, black);
}

.minor-stat .stat-label, .alt .stat-label {
	font-size: 7pt;
	background-color: var(--stat-label-bkgnd, light-gray);
	text-align: center;
	text-indent: 0px;
	vertical-align: top;
	position: absolute;
	bottom: -10px;
	right: -17px;
	width: 44px;
	height: 30px;
	border-top: 1.5px solid var(--pin-stripes, black);
	clip-path: polygon(0px 0px, 44px 0px, 22px 22px);
	transform: rotate(-45deg);
	
}
.major-stat {
	width: 76px;
	height: 76px;
	border: 2px;
	border-radius: 0px 3px 3px 0px;
	border-style: solid;
	border-width: 2px;
	border-color: var(--borders, black);
	border-radius: 4px;
	/*background-color: var(--primary, #AAAAAA);*/
	background-color: var(--pin-stripes, black);
	vertical-align: center;
	position: relative;
	
}

.major-stat.size {
	background-color: var(--primary, gray);
	position: absolute;
	bottom: -2px;
	left: -81px;
	border-radius: 3px;
}

.major-stat.def{
	background-color: var(--primary, gray);
}

.major-stat .stat-label {
	/*width: 50%;*/
	/*height: 100%;*/
	/*background-color: var(--stat-label-bkgnd, light-gray);*/
	vertical-align: middle;
	font-size: 7pt;
}

.major-stat .stat-value {
	width:36px;
	height: 35px;
	line-height: 36px;
	color: var(--pin-stripes, black);
	/*background-color: var(--primary, gray);*/
}

.icon {
	width: 28px;
	height: 28px;
	opacity: 20%;
	background-size: contain;
	position: absolute;
	top: 5px;
}

/*.minor-stat {
	.icon {
		width: 25px;
		height: 25px;
	}
}*/

.stat-shape {
	position: absolute;
}
 
.stat-shape.mel {
	left: 0px;
	top: 0px;
	height: calc(100% - 0.75px);
	width: calc(50% - 0.75px);
	background-color: var(--primary, gray);
	clip-path: polygon(0px 0px, 100% 0px, 100% 24px, 0px 100%);
	border-radius: 2px 0px 0px 0px;
}

.stat-shape.mis {
	right: 0px;
	top: 0px;
	height: calc(100% - 0.75px);
	width: calc(50% - 0.75px);
	background-color: var(--tertiary, white);
	clip-path: polygon(0px 0px, 100% 0px, 100% 100%, 0px 24px);
	border-radius: 0px 2px 0px 0px;
}

.stat-shape.def {
	left: 1px;
	bottom: 0px;
	background-color: var(--secondary, gray);
	height: calc(100% - 24px);
	width: calc(100% - 2px);
	clip-path: polygon(0px 100%, 50% 1.5px, 100% 100%);
	text-align: center;
	/*border-radius: 2px;*/
}

.icon.mel {
	left: 3px;
	content: var(--mel-icon);
}
.stat-label.mel {
	transform: rotate(-53.13deg);
	text-align: center;
	position: relative;
	right: 2px;
}
.stat-value.mel {
	text-align: center;
	width: 100%;
}
.icon.mis {
	right: 3px;
	content: var(--mis-icon);
}
.stat-label.mis {
	transform: rotate(53.13deg);
	text-align: center;
	position: relative;
	left: 2px;
}
.stat-value.mis {
	text-align: center;
	width: 100%;
}
.icon.def {
	content: var(--def-icon);
	left: 21px;
	top: 10.5px;
}
.stat-label.def {
	bottom: 1px;
	width: 100%;
	text-align: center;
}
.stat-value.def {
	width: 100%;
	text-align: center;
	top: 5px;
}


.icon.mob {
	content: var(--mob-icon);
	top: 10px;
	width: 25px;
	height: 25px;
}
.icon.tac {
	content: var(--tac-icon);
	top: 10px;
	width: 25px;
	height: 25px;
}
.icon.mor {
	content: var(--mor-icon);
	top: 10px;
	width: 25px;
	height: 25px;
}
.icon.dc {
	content: var(--dc-icon);
	top: 7px;
	width: 25px;
	height: 25px;
}
.icon.gui {
	content: var(--gui-icon);
	width: 48px;
	height: 48px;
	top: 11px;
}

.pow {
	position: absolute;
	right: 0px;
}

.def {
	position: absolute;
	left: 0px;
}

.minor-stat, .alt {
	position: relative;
	width: 62px;
	height: 44.5px;
	border-style: solid;
	border-width: 1px 2px;
	border-color: var(--borders, black);
	text-align: left;
	vertical-align: center;
	background-color: var(--secondary, light-gray);
}
.minor-stat .stat-value, .alt .stat-value {
	position: absolute;
	width: 100%;
	left: 5px;
	top: 6px;
	text-align: center;
}
.minor-stat .mob {
	
}
.alt {
	background-color: var(--tertiary, light-gray);
}

.pip {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	border: 1.5px solid var(--pin-stripes, black);
	position: absolute;
	top: calc(50% - 3px);
	cursor: pointer;
	background-color: var(--primary);
}

p {
	margin-top: 0px;
	margin-bottom: 2px;
}
h1 {
	font-family: var(--main-font, serif);
	text-align: center;
	font-size: inherit;
	margin: 0px 0px 2px 0px;
	color: var(--text-hlit, black);
	font-weight: normal;
}

.card-container {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}

.spacer {
  width: 100%;
  display: block;
  height: calc(50% - 3.5in);
  min-height: 20px;
}

.input-container {
	position: absolute;
	width: calc(100% - 84px);
    height: calc(100% - 4px);
	right: 5px;
	top: 4px;
}

.stat-container {
	position: absolute;
	left: -2px;
	top: -2px;
}

.name-field {
	text-align: center;
	width: 100%;
	height: 25px;
	cursor: pointer;
	margin-bottom: 1px;
	border-bottom: 2px solid var(--pin-stripes, black);
	font-size: 9pt;
	font-weight: bold;
}

.alt-name {
	border-bottom: 2px solid var(--pin-stripes, black);
}

input {
	font-family: var(--main-font);
	text-align: center;
	height: 20px;
    width: 50%;
	font-size: 8.5pt;
	color: var(--text-hlit);
	background-color: var(--field-bkgnd);
	border-radius: 1px;
	border: 1px solid var(--pin-stripes, black);
}

input::-webkit-calendar-picker-indicator {
  display: none !important;
}

.title {
	display: none;
	color: var(--text-hlit);
	position: absolute;
	bottom: 8px;
	font-size: 20pt;
	text-decoration: underline var(--text-hlit);
	cursor: pointer;
}

.alt-frame {
	display: none;
}

.size-list {
	width: 100%;
	height: 100%;
	font-size: 14pt;
	background-color: transparent;
	z-index: 1;
	position: absolute;
	top: 0px;
	left: 0px;
	border: 1px solid var(--pin-stripes, black);
	border-radius: 1px;
	/*font-family: var(--traits-font);*/
}
img {
	border: none;
}
.die-holder {
	width: 50px;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 35%;
	/*position: absolute;
	left: 11px;
	top: 9px;*/
}
.size {
	display: flex;
	justify-content: center;
	align-items: center;
}

.emblem {
	width: 130px;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	position: absolute;
	right: 11px;
	bottom: 75px;
}

.stat-value {
	z-index: 2;
	position: relative;
}

#adv-img {
	width: 200px;
}

.editor {
	position: fixed;
	top: 5%;
	left: 2%;
	background-color: var(--primary, #AAAAAA);
	border: 6px solid var(--pin-stripes, #000000);
	color: var(--text-stnd, #000000);
	border-radius: 8px;
	padding: 20px 30px;
	text-align: center;
	z-index: 5;
	max-height: 90%;
	overflow-y: auto;
}
.editor input {
	border: 2px solid var(--pin-stripes, #000000);
	border-radius: 5px;
	background-color: var(--field-bkgnd, #FFFFFF);
	color: var(--text-hlit, #000000);
	padding: 5px 3px;
	font-family: var(--traits-font);
	width: 130px;
    height: 30px;
}
.editor p {
	margin-bottom: 15px;
}
.editor textarea {
	width: 150p        x;
	height: 50px;
	min-height: 50px;
	border: 2px solid var(--pin-stripes, #000000);
	background-color: var(--field-bkgnd, #FFFFFF);
	resize: vertical;
}

#style-text, #import-text {
	height: 160px;
	margin: 15px 0px;
}

#import-editor {
	max-width: 690px;
}

#import-editor, #style-editor {
	left: initial;
	right: 2%;
}

.editor div {
	margin: 10px 0px;
}
button {
	border: 1px solid var(--pin-stripes, #000000);
	border-radius: 1px;
	padding: 5px 12px;
	background-color: var(--field-bkgnd, #FFFFFF);
	color: var(--text-stnd);
	font-family: var(--main-font);
}
