﻿/** BASE **/

/* Márgenes */
body {
	font-family: serif;
	font-variant: common-ligatures oldstyle-nums;
	margin: 0;
	padding: 0;
}
body * {
	object-fit: contain;
	box-sizing: border-box;
	max-width: 100%;
}

/* Control partición silábica */
#titlepage p,
#copyright-page p,
#dedication p,
h1,
h2,
h3,
h4,
h5,
h6 {
	break-after: avoid;
	page-break-after: avoid;
	adobe-hyphenate: none;
	-ms-hyphens: none;
	-moz-hyphens: none;
	-webkit-hyphens: none;
	-epub-hyphens: none;
	hyphens: none;
}
p, li, td, dt, dd {
	adobe-hyphenate: auto;
	-ms-hyphens: auto;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	-epub-hyphens: auto;
	hyphens: auto;
	/* before and after not in spec but iBooks support all three (-webkit-) */
	-ms-hyphenate-limit-lines: 3;
	-moz-hyphenate-limit-lines: 3;
	-webkit-hyphenate-limit-lines: 3;
	hyphenate-limit-lines: 3;
	/* No support except Trident (Windows) and Webkit (old deprecated syntax) */
	-ms-hyphenate-limit-chars: 6 3 2;
	-moz-hyphenate-limit-chars: 6 3 2;
	-webkit-hyphenate-limit-before: 3;
	-webkit-hyphenate-limit-after: 2;
	hyphenate-limit-chars: 6 3 2;
	/* No support except Trident (Windows) */
	-ms-hyphenate-limit-zone: 10%;
	-moz-hyphenate-limit-zone: 10%;
	-webkit-hyphenate-limit-zone: 10%;
	hyphenate-limit-zone: 10%;
	/* No support */
	-ms-hyphenate-limit-last: always;
	-moz-hyphenate-limit-last: always;
	-webkit-hyphenate-limit-last: always;
	hyphenate-limit-last: always;
	orphans: 2;
	widows: 2;
}

/** FRONTMATTER **/

/* Cubierta */
.cover {
	margin: 0;
	padding: 0;
	text-align: center;
	text-indent: 0;
}
img.cover {
	height: 100%;
}

/* Portada */
#titlepage {
	display: flex;
	flex-direction: column;
	height: 100vh;
}
#titlepage p {
	text-align: center;
	text-indent: 0;
}
#titlepage p.author {
	font-size: 1.25em;
	font-style: normal;
	font-weight: normal;
	margin: 2em 0 1em;
}
#titlepage p.title {
	font-size: 2em;
	font-weight: normal;
	line-height: 1.2;
	margin: 0 0 0 0;
}
#titlepage p.title span.big {
	font-size: 1.6em;
}
#titlepage p.title span.small {
	font-size: .8em;
}
#titlepage p.subtitle {
	font-size: 1.1em;
	font-style: italic;
	font-weight: normal;
	margin: 1em 0;
}
#titlepage p.contrib {
	font-size: .9em;
	font-style: italic;
	margin: 2.5em 0 0 0;
}
#titlepage p.contrib span.name {
	display: block;
	font-size: .8em;
	font-style: normal;
}
#titlepage div.publisher {
	margin: auto auto auto auto;
	padding-top: 5em;
	text-align: center;
	width: 3rem;
}
#titlepage div.icon {
	margin: 4em auto 0;
	text-align: center;
	width: 2rem;
}

/* Créditos */
#copyright-page {
	margin: 4em 2em;
}
#copyright-page div + div {
	margin: 1em 0 0 0;
}
#copyright-page p {
	font-size: .8em;
	text-align: center;
	text-indent: 0;
}
#copyright-page div.identifiers p {
	font-size: .7em;
}
#copyright-page div.edition p {
	font-style: italic;
}

/* Índice */
#toc ol {
	font-style: normal;
	list-style-type: none !important;
	margin: 0;
	padding: 0;
	text-align: left;
}
#toc li {
	font-style: normal;
	font-variant: common-ligatures oldstyle-nums;
	list-style-type: none !important;
	margin: 0;
	padding: 0;
	text-align: left;
}
#toc li.ftm a,
#toc li.bkm a {
	font-style: italic;
}
#toc li.ftm + li.bdm,
#toc li.bdm + li.bkm {
	margin-top: 1.5em;
}
#toc li.bdm + li.bdm {
	margin-top: .75em;
}
#toc li.ftm,
#toc li.bkm {
	margin-left: 1em;
}
#toc li.part {
	font-family: sans-serif;
	margin: 1em 0;
}
#toc li.part a {
	font-weight: bold;
}
#toc li.part ol {
	margin: 0 0 0 1em;
}
#toc li.part ol li {
	font-family: serif;
}
#toc li.part li a {
	font-weight: normal;
}
#toc li ol li {
	margin: 0 0 0 1em;
	text-indent: -1em;
}
#toc li ol {
	margin-left: 1em;
}
#toc li ol li a {
	font-weight: normal;
}
#toc li ol li ol {
	margin: 0 0 0 0;
}
#toc li ol li ol a {
	font-weight: normal;
	font-style: normal;
}
#toc a {
	color: #000001 !important;
	font-weight: normal;
}
#toc p {
	font-style: italic;
	margin: 1em 0;
}
#toc li {
	clear: both;
}

/* Dedicatoria */
#dedication {
	margin-top: 5em;
}
#dedication p {
	font-size: .8em;
	text-align: center;
	text-indent: 0;
}
#dedication p + p {
	text-indent: 1em;
}

/* BODYMATTER */

/* Estilos generales */
h1 {
	font-family: serif;
	font-size: 1em;
	font-style: normal;
	font-weight: normal;
	line-height: 1.5;
	margin: 3em 0;
	padding: 0;
	text-align: center;
	text-indent: 0;
}
h1 span.ordinal {
	display: block;
	font-variant-numeric: lining-nums;
}
h1 span.title {
	display: block;
	margin: 1em 0;
}
h1 span.subtitle {
	display: block;
}
h2 {
	font-family: serif;
	font-size: .8em;
	font-style: normal;
	font-weight: normal;
	line-height: 1.5;
	margin: 3em 0 1em 0;
	padding: 0;
	text-align: left;
	text-indent: 0;
}
h3 {
	font-family: serif;
	font-size: 1em;
	font-style: italic;
	font-weight: normal;
	line-height: 1.5;
	margin: 2.5em 0 1em 0;
	padding: 0;
	text-align: left;
	text-indent: 0;
}

p {
	font-family: inherit;
	font-size: 1em;
	line-height: 1.5;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	text-align: justify;
	text-indent: 1em;
}

a {
	color: #00F;
	font-style: normal;
	font-weight: bolder;
	text-decoration: none;
}
abbr {
	border: 0;
	text-decoration: none;
	white-space: nowrap;
}
cite {
	display: inline;
	font-style: italic;
}
hr {
	border: none !important;
	height: 1em;
	margin: 0;
}
hr.double {
	border: none !important;
	height: 2em;
	margin: 0;
}
hr.light {
	border: none !important;
	height: 1em;
	margin: 0;
}
hr.w30 {
	background: currentColor;
	height: 1px;
	margin: 3em auto;
	width: 7rem;
}
img {
	margin: 0;
	max-width: 100%;
	padding: 0;
}
q {
  font-style: italic;
}
q:before {
  content: "";
}
q:after {
  content: "";
}
sub,
sup {
  font-size: .7em;
}
strong {
	font-family: sans-serif;
}

/* Listas */
ol {
	margin: 1em 0;
	padding: 0 0 0 1.5em;
}
ul {
	margin: 1em 0 1em 1em;
	padding: 0 0 0 1.25em;
}
li {
	font-size: 1em;
	line-height: 1.5;
	margin: 0;
	padding: 0;
	text-align: justify;
	text-indent: 0;
}
ul ul {
	list-style: circle;
	margin: 1em auto;
}
li p {
	font-size: 1em;
	margin: 0;
	text-indent: 1em;
}
li p + p {
	text-indent: 1em;
}
.none {
	margin: 0;
	list-style: none;
	padding: 0;
}
.lower-alpha {
	list-style: lower-alpha;
}
.lower-alpha-l1 {
	list-style: lower-alpha;
	margin-left: 1em;
}
.upper-alpha {
	list-style: upper-alpha;
}
.upper-roman {
	list-style: upper-roman;
}
.separated li {
	margin: 1em 0;
}

.fake {
	list-style: none;
	margin: 1em 0 1em 1em;
	padding: 0;
}
.fake li span.number {
	display: inline;
	float: left;
	margin: 0;
	page-break-after: avoid;
	text-align: left;
	width: 1em;
}
.fake li span.text {
	display: block;
	margin-left: 1.5em;
	text-indent: 0;
}
.fake li span.number + span.text {
	display: block;
}

/* Figuras y captions */
div.figure {
	margin: 1em auto;
	break-inside: avoid;
	page-break-inside: avoid;
	text-align: center;
	width: 100%;
}
div.figure-10 {
	margin: 1em auto;
	break-inside: avoid;
	page-break-inside: avoid;
	text-align: center;
	width: 6em;
}
div.figure-50 {
	margin: 1em auto;
	break-inside: avoid;
	page-break-inside: avoid;
	text-align: center;
	width: 50%;
}
div.figure-30 {
	margin: 1em auto;
	break-inside: avoid;
	page-break-inside: avoid;
	text-align: center;
	width: 12em;
	max-width: 100%;
}
div.figure-75 {
	margin: 1em auto;
	break-inside: avoid;
	page-break-inside: avoid;
	text-align: center;
	width: 20em;
	max-width: 100%;
}
div.icon {
	margin: 0;
	break-inside: avoid;
	page-break-inside: avoid;
	text-align: left;
	width: 6em;
	max-width: 100%;
}
img {
	margin: 0;
	max-width: 100%;
	max-height: 100%;
	text-align: center;
}

div.figcaption {
	margin: .6em 0;
}
div.figcaption p {
	font-size: .8em;
	text-align: center;
	text-indent: 0;
}
div.figcaption span.label {
	font-weight: bold;
	font-variant: common-ligatures oldstyle-nums;
}
div.figcaption p.left {
	margin: .5em 0;
	text-align: left;
}

/* Seudoversalitas */
span.sc,
p.attrib span.name {
	font-size: 75%;
}

/* Estilos particulares */
blockquote {
	font-size: 1em;
	margin: 1em 0 1em 1em;
}
blockquote p,
blockquote li {
	font-size: .9em;
	font-style: normal;
	text-indent: 0;
}
blockquote p + p {
	text-indent: 1em;
}
blockquote + p {
	text-indent: 0;
}

blockquote p.title {
	font-weight: bold;
	text-indent: 0;
}
blockquote p.question {
	font-weight: bold;
	margin: 1em 0;
	text-indent: 0;
}
blockquote p.question + p {
	text-indent: 0;
}
blockquote p.title + p.question {
	margin-top: 0;
}

/* Firmas */
div.signature {
	margin-top: .5em;
	break-inside: avoid;
	page-break-inside: avoid;
}
div.signature p {
	font-size: 1em;
	text-align: right;
	text-indent: 0;
}
div.signature span.name {
	font-size: .8em;
}
div.signature p.data {
	font-style: italic;
}

/* Asteriscos */
p.asterisks {
	margin: 1.3em 0 1em 0;
	text-align: center;
	text-indent: 0;
}
p.asterisks + p {
	text-indent: 0;
}

/* Fórmulas */
div.formula {
	margin: 1em 0 1em 1em;
}
div.formula p {
	margin: 0;
	text-align: center;
	text-indent: 0;
}
div.formula p.explain {
	margin: 1em 0;
	text-align: justify;
}
div.formula + p {
	text-indent: 0;
}

/* Poemas */
.poem {
	margin-left: 2em;
}
.poem p.title {
	font-weight: bold;
	text-indent: 0;
}
.poem p.stanza {
	text-indent: 0;
}
.poem p.stanza + p.stanza {
	margin-top: 1em;
}
.poem span.verse {
	display: block;
	margin-left: 1em;
	text-indent: -1em;
}

/* Tarjeta */
blockquote.card {
	border: 1px solid currentColor;
	margin: 1em 0;
	padding: 1em;
}
blockquote.card p.headline {
	font-weight: bold;
	margin-top: 1em;
	text-indent: 0;
}
blockquote.card p.source {
	margin-top: 1em;
	text-align: right;
	text-indent: 0;
}

/* Otros */
p.attrib {
	margin: .5em 0 0 0;
	page-break-before: avoid;
	text-align: right;
	text-indent: 0;
}
p.listhead {
	font-weight: normal;
	margin: 1em 0 0 1em;
	text-indent: 0;
}
p.listhead + ul {
	margin-top: 0;
}
p.point {
	margin-top: 1em;
	text-indent: 0;
}
p.point span.label {
	font-family: sans-serif;
	font-size: .9em;
	font-weight: bold;
}
p.notice {
	margin-top: 1em;
	text-indent: 0;
}

span.underline {
	text-decoration: underline;
}

/* Estilos consecuentes */
h1 + p,
h2 + p,
h3 + p,
h4 + p,
h5 + p,
h6 + p,
hr + p,
ol + p,
div.figure + p,
div.figure-30 + p,
div.figure-50 + p,
div.figure-75 + p,
ul + p {
	text-indent: 0;
}
hr.light + p {
	text-indent: 1em;
}

/* BACKMATTER */

/* Bibliografía */
#bibliography ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#bibliography li {
	margin-left: 1em;
	text-indent: -1em;
}
#bibliography span.biblioauthor {
	font-size: .8em;
}
a[href^="http:"],
a[href^="https:"] {
	word-break: break-all;
}

/* Notas | Llamadas */
a.noteref {
	font-size: .7em;
	line-height: 1;
	vertical-align: top;
}

/* Notas | Notas al pie */
div.footnote {
	margin: .6em 0 0 0;
	page-break-inside: avoid;
}
/* div.footnote + div.footnote { */
	/* break-before: always; */
	/* page-break-before: always; */
/* } */
div.footnote p {
	font-size: .8em;
	margin: 0 0 0 2.5em;
	overflow: hidden;
	text-indent: 0;
}
div.footnote a.noteback {
	display: inline;
	float: left;
	clear: left;
	font-size: .8em;
	font-style: normal;
	line-height: 1.5;
	margin: 0;
	padding: 0 .25em 0 0;
	page-break-after: avoid;
	text-align: right;
	vertical-align: inherit;
	width: 2em;
}
div.footnote a.noteback + p {
	page-break-before: avoid;
}

/* Notas | Notas al pie */
#endnotes h2 {
	margin: 2em 0 1em 0;
	padding: 0;
	font-size: .8em;
	text-align: left;
}
div.endnote {
	margin: .6em 0 0 0;
	page-break-inside: avoid;
}
div.endnote p {
	font-size: .8em;
	margin: 0 0 0 2.5em;
	overflow: hidden;
	text-indent: 0;
}
div.endnote .noteback {
	display: inline;
	float: left;
	clear: left;
	font-size: .8em;
	font-style: normal;
	margin: 0;
	padding: 0 .25em 0 0;
	page-break-after: avoid;
	text-align: right;
	vertical-align: inherit;
	width: 2em;
}
div.endnote .noteback + p {
	page-break-before: avoid;
}