/* source-serif-4-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-serif-4-v14-latin-regular.woff2') format('woff2');
}

/* source-serif-4-italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Source Serif 4';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/source-serif-4-v14-latin-italic.woff2') format('woff2');
}

/* source-serif-4-600 - latin */
@font-face {
  font-display: swap;
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/source-serif-4-v14-latin-600.woff2') format('woff2');
}

/* source-serif-4-600italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Source Serif 4';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/source-serif-4-v14-latin-600italic.woff2') format('woff2');
}

:root {
    --bg: Linen;
    --ink: #181818;
    --ink-soft: #36454F;    /* couplets */
    --ink-faint: #292929;   /* notes */
    --rule: #292929;        /* note border */
    --link: MediumSlateBlue;
    --link-visited: RebeccaPurple;
    --link-hover: green;
}

html[data-theme="ink"] {
    --bg: #15151b;
    --ink: #ede4d3;
    --ink-soft: #b9b3a4;
    --ink-faint: #8b8676;
    --rule: #ffffff30;
    --link: #a99af7;
    --link-visited: #d0a8e8;
    --link-hover: #9fc9a8;
}

body {
    font-family: "Century Schoolbook", "Source Serif 4", serif;
    font-size: 16pt;
    line-height: 21pt;
	background-color: var(--bg);
	padding-bottom: 10vh;
	text-rendering: optimizeLegibility;
	font-kerning: normal;
	text-wrap: pretty;
	font-optical-sizing: auto;
}

.poem {
	width: 90vw;
	max-width: fit-content; 
	margin: auto;
	padding: 10px 8%;
	position: relative;
	padding-bottom: 1.5rem;
/*	background-color: red; */
}

.about {
	width: 55vw;
	margin: auto;
	padding: 10px 5vw;
}

h1 {
	font-size: 22pt;
	text-wrap: balance;
	color: var(--ink);
}

h2 {
	font-size: 20pt;
	text-wrap: balance;
	color: var(--ink);
}

p {
	color: var(--ink);
}

.opening::first-letter {
    font-size: 3.2em;
    line-height: 0.85;
    float: left;
    padding: 0.08em 0.08em 0 0;
    font-weight: 600;
}

.couplet {
    color: var(--ink-soft);
}

.smallcaps {
	font-variant-caps: all-small-caps;
} 

.note {
	font-size: 0.85rem;
	color: var(--ink-faint);
	text-align: left;
	/*mobile settings*/
	position: absolute;
	bottom: 0;
	left: 8%;
	right: 8%;
	width: 90vw;
	max-width: fit-content;
	padding-top: 5px;
	border-top: 1px solid var(--rule);
	user-select: none;
    -webkit-user-select: none;
}

.note:hover {
	user-select: text;
    -webkit-user-select: text;
    cursor: text;
}

.quotation {
	font-family: monospace;
	margin-top: 10pt;
	margin-bottom: 10pt;
}

strong { /* Right now this only applies to "GIVE IT UP!" */
	letter-spacing: 0.06em;
}

a:link {
	color: var(--link);
	text-decoration: none;
}

a:visited {
	color: var(--link-visited);
	text-decoration: none;
}

a:hover {
	color: var(--link-hover);
	text-decoration: underline;
	text-decoration-color: green;
}

.blue {
	a {
		color: SteelBlue;
		text-decoration-color: SteelBlue;
	}
}

.toolbar {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 40;
    background: color-mix(in srgb, var(--bg) 78%, transparent);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    padding: 6px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    font-size: 10pt;
    font-variant-caps: all-small-caps;
    letter-spacing: 0.04em;
}
.toolbar button {
    appearance: none;
    background: transparent;
    border: 0;
    color: var(--ink-soft);
    padding: 4px 10px;
    border-radius: 999px;
    font: inherit;
    font-family: inherit;
    cursor: pointer;
}
.toolbar button:hover { color: var(--ink); }
.toolbar button[aria-pressed="true"] {
    background: var(--ink);
    color: var(--bg);
}

@media only screen and (max-width: 600px) {
/* fixing mobile layout */
body {
	line-height: 18pt;
}
h1 {
	font-size: 18pt;
}
h2 {
	font-size: 15pt;
}
p {
font-size: 13pt;
}
.about {
	width: 80vw
}
    .toolbar {
        position: absolute;
    }
    #t-top {
        display: none;
    }
}

@media only screen and (min-width: 900px) {

    .poem {
        padding-bottom: 10px; 
        overflow: visible;    
    }

    p {
        position: relative;   
    }
/* desktop note settings */
    .note {
        position: absolute;
        bottom: auto; 
		top: 0;
        left: 100%;           
        right: auto;
        margin-left: 2rem;    
        width: max-content;
        max-width: 300px; 
        /* Style overrides */
        padding: 0;           
        border-top: none;     
    }
	
}

