0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2026-01-09 02:52:38 +00:00

Merge branch 'master' into License_Snippets_Redux

This commit is contained in:
David Bolack
2025-07-16 13:18:04 -05:00
185 changed files with 20091 additions and 9149 deletions

View File

@@ -9,6 +9,8 @@ const LicenseGen = require('./snippets/license.gen.js');
const LicenseGenAelf = require('./snippets/licenseAELF.js');
const LicenseDTTRPGGCC = require('./snippets/licenseDTRPGCC.gen.js');
const dedent = require('dedent-tabs').default;
const TableOfContentsGen = require('./snippets/tableOfContents.gen.js');
const indexGen = require('./snippets/index.gen.js');
module.exports = [
@@ -41,6 +43,11 @@ module.exports = [
icon : 'fas fa-sort-numeric-down',
gen : '{{pageNumber,auto}}\n'
},
{
name : 'Variable Auto Page Number',
icon : 'fas fa-sort-numeric-down',
gen : '{{pageNumber $[HB_pageNumber]}}\n'
},
{
name : 'Skip Page Number Increment this Page',
icon : 'fas fa-xmark',
@@ -146,7 +153,53 @@ module.exports = [
[Homebrewery.Naturalcrit.com](https://homebrewery.naturalcrit.com)
}}\n\n`;
},
}
},
{
name : 'Table of Contents',
icon : 'fas fa-book',
gen : TableOfContentsGen,
experimental : true,
subsnippets : [
{
name : 'Table of Contents',
icon : 'fas fa-book',
gen : TableOfContentsGen,
experimental : true
},
{
name : 'Include in ToC up to H3',
icon : 'fas fa-dice-three',
gen : dedent `\n{{tocDepthH3
}}\n`,
},
{
name : 'Include in ToC up to H4',
icon : 'fas fa-dice-four',
gen : dedent `\n{{tocDepthH4
}}\n`,
},
{
name : 'Include in ToC up to H5',
icon : 'fas fa-dice-five',
gen : dedent `\n{{tocDepthH5
}}\n`,
},
{
name : 'Include in ToC up to H6',
icon : 'fas fa-dice-six',
gen : dedent `\n{{tocDepthH6
}}\n`,
}
]
},
{
name : 'Index',
icon : 'fas fa-bars',
gen : indexGen,
experimental : true
},
]
},
{
@@ -731,7 +784,7 @@ module.exports = [
name : 'Add Comment',
icon : 'fas fa-code',
gen : '/* This is a comment that will not be rendered into your brew. */'
},
}
]
},
/*********************** IMAGES *******************/
@@ -1015,6 +1068,15 @@ module.exports = [
icon : 'fas fa-print',
view : 'style',
snippets : [
{
name : 'US Letter Page Size',
icon : 'far fa-file',
gen : dedent`/* US Letter Page Size */
.page {
width : 215.9mm; /* 8.5in */
height : 279.4mm; /* 11in */
}\n\n`,
},
{
name : 'A3 Page Size',
icon : 'far fa-file',

View File

@@ -1,4 +1,4 @@
const Markdown = require('../../../../shared/naturalcrit/markdown.js');
import Markdown from '../../../../shared/naturalcrit/markdown.js';
module.exports = {
createFooterFunc : function(headerSize=1){

View File

@@ -0,0 +1,85 @@
const dedent = require('dedent-tabs').default;
module.exports = ()=>{
return dedent`
{{index,wide,columns:5;
##### Index
- Ankhesh-Bort
- city map, 7
- city watch, 12
- guilds, 19
- Cheese
- types of cheese, 8
- cheese-related magic, 14
- cheese-related quests, 26-27
- Death
- appearance, 10
- personality, 13
- hobbies, 23
- Elves
- types of elves, 15
- elvish magic, 24
- elvish curses, 28
- Footnotes
- types of footnotes, 16-17
- footnote rules, 20-21
- footnote humor, 29-30
- Gods
- types of gods, 12
- godly interventions, 25
- godly conflicts, 31
- Heroes
- class features, 11-12
- heroic deeds, 26-27
- Inns
- types of inns, 9
- inn amenities, 18
- Jokes
- types of jokes, 11-12
- joke delivery, 25
- Knives
- types of knives, 16-17
- knife skills, 22-23
- knife fights, 28-29
- Luggage
- appearance, 10
- personality, 13
- abilities, 23
- Magic
- types of magic, 15
- magic rules, 24
- magic mishaps, 28
- Socks
- types of socks, 9
- sock-related magic (yes, really), 15
- sock-related quests (no, really), 26
- Trolls
- appearance and biology, 11
- culture and language, 18
- troll rights and activism, 31
- Unknown University
- history and architecture, 12
- faculty and staff, 20
- courses and exams, 33
- Vampires
- types and origins, 13
- vampiric powers and weaknesses, 21
- vampiric etiquette and politics, 34
- Witches
- types and traditions, 14
- witchcraft and headology, 22
- witch trials and tribulations, 35
- Xylophones
- musical instruments or weapons?, 15
- xylophone-related magic and lore, 23
- xylophone-related quests and puzzles, 36
- Yetis
- appearance and behavior, 16
- yeti philosophy and religion, 24
- yeti encounters and stories, 37
- Zombies
- types and causes, 17
- zombie rights and duties, 25
- zombie survival and prevention, 38
}}`;
};

View File

@@ -0,0 +1,78 @@
const dedent = require('dedent-tabs').default;
// Map each actual page to its footer label, accounting for skips or numbering resets
const mapPages = (pages)=>{
let actualPage = 0;
let mappedPage = 0; // Number displayed in footer
const pageMap = [];
pages.forEach((page)=>{
actualPage++;
const doSkip = page.querySelector('.skipCounting');
const doReset = page.querySelector('.resetCounting');
if(doReset)
mappedPage = 1;
if(!doSkip && !doReset)
mappedPage++;
pageMap[actualPage] = {
mappedPage : mappedPage,
showPage : !doSkip
};
});
return pageMap;
};
const getMarkdown = (headings, pageMap)=>{
const levelPad = ['- ###', ' - ####', ' -', ' -', ' -', ' -'];
const allMarkdown = [];
const depthChain = [0];
headings.forEach((heading)=>{
const page = parseInt(heading.closest('.page').id?.replace(/^p/, ''));
const mappedPage = pageMap[page].mappedPage;
const showPage = pageMap[page].showPage;
const title = heading.textContent.trim();
const ToCExclude = getComputedStyle(heading).getPropertyValue('--TOC');
const depth = parseInt(heading.tagName.substring(1));
if(!title || !showPage || ToCExclude == 'exclude')
return;
//If different header depth than last, remove indents until nearest higher-level header, then indent once
if(depth !== depthChain[depthChain.length -1]) {
while (depth <= depthChain[depthChain.length - 1]) {
depthChain.pop();
}
depthChain.push(depth);
}
const markdown = `${levelPad[depthChain.length - 2]} [{{ ${title}}}{{ ${mappedPage}}}](#p${page})`;
allMarkdown.push(markdown);
});
return allMarkdown.join('\n');
};
const getTOC = ()=>{
const iframe = document.getElementById('BrewRenderer');
const iframeDocument = iframe.contentDocument || iframe.contentWindow.document;
const headings = iframeDocument.querySelectorAll('h1, h2, h3, h4, h5, h6');
const pages = iframeDocument.querySelectorAll('.page');
const pageMap = mapPages(pages);
return getMarkdown(headings, pageMap);
};
module.exports = function(props){
const TOC = getTOC();
return dedent`
{{toc,wide
# Contents
${TOC}
}}
\n`;
};

View File

@@ -5,6 +5,7 @@
@import (less) './themes/fonts/iconFonts/diceFont.less';
@import (less) './themes/fonts/iconFonts/gameIcons.less';
@import (less) './themes/fonts/iconFonts/fontAwesome.less';
@import (less) './themes/fonts/Journal/fonts.less';
:root {
//Colors
@@ -21,9 +22,9 @@ body { counter-reset : page-numbers 0; }
// *****************************/
.page {
.block {
break-inside : avoid;
display : inline-block;
width : 100%;
break-inside : avoid;
img { z-index : 0; }
}
.inline-block {
@@ -45,16 +46,18 @@ body { counter-reset : page-numbers 0; }
}
.page {
.useColumns();
position : relative;
z-index : 15;
box-sizing : border-box;
width : 215.9mm;
height : 279.4mm;
padding : 1.4cm 1.9cm 1.7cm;
overflow : hidden;
background-color : var(--HB_Color_Background);
text-rendering : optimizeLegibility;
contain : size;
position : relative;
z-index : 15;
box-sizing : border-box;
width : 215.9mm;
height : 279.4mm;
padding : 1.4cm 1.9cm 1.7cm;
overflow : clip;
background-color : var(--HB_Color_Background);
text-rendering : optimizeLegibility;
contain : strict;
content-visibility : auto;
contain-intrinsic-size : auto none;
}
//*****************************
// * BASE
@@ -118,7 +121,7 @@ body { counter-reset : page-numbers 0; }
// * CODE BLOCKS
// ************************************/
code {
font-family : 'Courier New', "Courier", monospace;
font-family : 'Courier New', 'Courier', monospace;
overflow-wrap : break-word;
white-space : pre-wrap;
}
@@ -131,10 +134,10 @@ body { counter-reset : page-numbers 0; }
// * EXTRAS
// *****************************/
.columnSplit {
margin-top : 0;
visibility : hidden;
-webkit-column-break-after : always;
margin-top : 0;
break-after : always;
-webkit-column-break-after : always;
-moz-column-break-after : always;
& + * { margin-top : 0; }
}
@@ -197,11 +200,11 @@ body { counter-reset : page-numbers 0; }
background-color : var(--HB_Color_WatercolorStain); /* default color */
background-size : cover;
-webkit-mask-image : var(--wc);
-webkit-mask-size : contain;
-webkit-mask-repeat : no-repeat;
mask-image : var(--wc);
mask-size : contain;
-webkit-mask-repeat : no-repeat;
mask-repeat : no-repeat;
-webkit-mask-size : contain;
mask-size : contain;
--wc : @watercolor1; /* default image */
}
@@ -229,15 +232,15 @@ body { counter-reset : page-numbers 0; }
height : 200%;
background-image : var(--checkerboard);
background-size : 20px;
transform : translateY(50%) translateX(-50%) rotate(calc(1deg * var(--rotation))) scaleX(var(--scaleX)) scaleY(var(--scaleY));
-webkit-mask-image : var(--wc), var(--revealer);
-webkit-mask-repeat : repeat-x;
-webkit-mask-size : 50%; //Scale only X to fit page width, leave height at aspect ratio, designed to hang off the edge
-webkit-mask-position : 50% calc(50% - var(--offset));
mask-image : var(--wc);
-webkit-mask-repeat : repeat-x;
mask-repeat : repeat-x;
mask-size : 50%;
-webkit-mask-position : 50% calc(50% - var(--offset));
mask-position : 50% calc(50% - var(--offset));
-webkit-mask-size : 50%; //Scale only X to fit page width, leave height at aspect ratio, designed to hang off the edge
mask-size : 50%;
transform : translateY(50%) translateX(-50%) rotate(calc(1deg * var(--rotation))) scaleX(var(--scaleX)) scaleY(var(--scaleY));
--rotation : 0;
--revealer : none;
--checkerboard : none;
@@ -274,19 +277,19 @@ body { counter-reset : page-numbers 0; }
}
&.revealImage {
--revealer : linear-gradient(0deg, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.2));
--checkerboard : url("/assets/waterColorMasks/missingImage.png"); //shows any masked regions not filled by image
--checkerboard : url('/assets/waterColorMasks/missingImage.png'); //shows any masked regions not filled by image
}
}
.imageMaskEdge {
&1 { --wc : url("/assets/waterColorMasks/edge/0001.webp"); }
&2 { --wc : url("/assets/waterColorMasks/edge/0002.webp"); }
&3 { --wc : url("/assets/waterColorMasks/edge/0003.webp"); }
&4 { --wc : url("/assets/waterColorMasks/edge/0004.webp"); }
&5 { --wc : url("/assets/waterColorMasks/edge/0005.webp"); }
&6 { --wc : url("/assets/waterColorMasks/edge/0006.webp"); }
&7 { --wc : url("/assets/waterColorMasks/edge/0007.webp"); }
&8 { --wc : url("/assets/waterColorMasks/edge/0008.webp"); }
&1 { --wc : url('/assets/waterColorMasks/edge/0001.webp'); }
&2 { --wc : url('/assets/waterColorMasks/edge/0002.webp'); }
&3 { --wc : url('/assets/waterColorMasks/edge/0003.webp'); }
&4 { --wc : url('/assets/waterColorMasks/edge/0004.webp'); }
&5 { --wc : url('/assets/waterColorMasks/edge/0005.webp'); }
&6 { --wc : url('/assets/waterColorMasks/edge/0006.webp'); }
&7 { --wc : url('/assets/waterColorMasks/edge/0007.webp'); }
&8 { --wc : url('/assets/waterColorMasks/edge/0008.webp'); }
}
[class*='imageMaskCenter'] {
@@ -294,15 +297,15 @@ body { counter-reset : page-numbers 0; }
left : calc(var(--offsetX));
width : 100%;
height : 100%;
transform : rotate(calc(1deg * var(--rotation))) scaleX(var(--scaleX)) scaleY(var(--scaleY));
-webkit-mask-image : var(--wc), var(--revealer);
-webkit-mask-repeat : no-repeat;
-webkit-mask-size : 100% 100%; //Scale both dimensions to fit page size
-webkit-mask-position : 0% 0%;
mask-image : var(--wc), var(--revealer);
-webkit-mask-repeat : no-repeat;
mask-repeat : no-repeat;
mask-size : 100% 100%; //Scale both dimensions to fit page size
-webkit-mask-position : 0% 0%;
mask-position : 50% 50%;
-webkit-mask-size : 100% 100%; //Scale both dimensions to fit page size
mask-size : 100% 100%; //Scale both dimensions to fit page size
transform : rotate(calc(1deg * var(--rotation))) scaleX(var(--scaleX)) scaleY(var(--scaleY));
& > p:has(img) {
position : absolute;
@@ -319,23 +322,23 @@ body { counter-reset : page-numbers 0; }
}
.imageMaskCenter {
&1 { --wc : url("/assets/waterColorMasks/center/0001.webp"); }
&2 { --wc : url("/assets/waterColorMasks/center/0002.webp"); }
&3 { --wc : url("/assets/waterColorMasks/center/0003.webp"); }
&4 { --wc : url("/assets/waterColorMasks/center/0004.webp"); }
&5 { --wc : url("/assets/waterColorMasks/center/0005.webp"); }
&6 { --wc : url("/assets/waterColorMasks/center/0006.webp"); }
&7 { --wc : url("/assets/waterColorMasks/center/0007.webp"); }
&8 { --wc : url("/assets/waterColorMasks/center/0008.webp"); }
&9 { --wc : url("/assets/waterColorMasks/center/0009.webp"); }
&10 { --wc : url("/assets/waterColorMasks/center/0010.webp"); }
&11 { --wc : url("/assets/waterColorMasks/center/0011.webp"); }
&12 { --wc : url("/assets/waterColorMasks/center/0012.webp"); }
&13 { --wc : url("/assets/waterColorMasks/center/0013.webp"); }
&14 { --wc : url("/assets/waterColorMasks/center/0014.webp"); }
&15 { --wc : url("/assets/waterColorMasks/center/0015.webp"); }
&16 { --wc : url("/assets/waterColorMasks/center/0016.webp"); }
&special { --wc : url("/assets/waterColorMasks/center/special.webp"); }
&1 { --wc : url('/assets/waterColorMasks/center/0001.webp'); }
&2 { --wc : url('/assets/waterColorMasks/center/0002.webp'); }
&3 { --wc : url('/assets/waterColorMasks/center/0003.webp'); }
&4 { --wc : url('/assets/waterColorMasks/center/0004.webp'); }
&5 { --wc : url('/assets/waterColorMasks/center/0005.webp'); }
&6 { --wc : url('/assets/waterColorMasks/center/0006.webp'); }
&7 { --wc : url('/assets/waterColorMasks/center/0007.webp'); }
&8 { --wc : url('/assets/waterColorMasks/center/0008.webp'); }
&9 { --wc : url('/assets/waterColorMasks/center/0009.webp'); }
&10 { --wc : url('/assets/waterColorMasks/center/0010.webp'); }
&11 { --wc : url('/assets/waterColorMasks/center/0011.webp'); }
&12 { --wc : url('/assets/waterColorMasks/center/0012.webp'); }
&13 { --wc : url('/assets/waterColorMasks/center/0013.webp'); }
&14 { --wc : url('/assets/waterColorMasks/center/0014.webp'); }
&15 { --wc : url('/assets/waterColorMasks/center/0015.webp'); }
&16 { --wc : url('/assets/waterColorMasks/center/0016.webp'); }
&special { --wc : url('/assets/waterColorMasks/center/special.webp'); }
}
@@ -344,15 +347,15 @@ body { counter-reset : page-numbers 0; }
left : calc(-50% + var(--offsetX));
width : 200%;
height : 200%;
transform : rotate(calc(1deg * var(--rotation))) scaleX(var(--scaleX)) scaleY(var(--scaleY));
-webkit-mask-image : var(--wc), var(--revealer);
-webkit-mask-repeat : no-repeat;
-webkit-mask-size : 100% 100%; //Scale both dimensions to fit page size
-webkit-mask-position : 50% 50%;
mask-image : var(--wc), var(--revealer);
-webkit-mask-repeat : no-repeat;
mask-repeat : no-repeat;
mask-size : 100% 100%; //Scale both dimensions to fit page size
-webkit-mask-position : 50% 50%;
mask-position : 50% 50%;
-webkit-mask-size : 100% 100%; //Scale both dimensions to fit page size
mask-size : 100% 100%; //Scale both dimensions to fit page size
transform : rotate(calc(1deg * var(--rotation))) scaleX(var(--scaleX)) scaleY(var(--scaleY));
& > p:has(img) {
bottom : 25%;
left : 25%;
@@ -365,43 +368,43 @@ body { counter-reset : page-numbers 0; }
}
}
.imageMaskCorner {
&1 { --wc : url("/assets/waterColorMasks/corner/0001.webp"); }
&2 { --wc : url("/assets/waterColorMasks/corner/0002.webp"); }
&3 { --wc : url("/assets/waterColorMasks/corner/0003.webp"); }
&4 { --wc : url("/assets/waterColorMasks/corner/0004.webp"); }
&5 { --wc : url("/assets/waterColorMasks/corner/0005.webp"); }
&6 { --wc : url("/assets/waterColorMasks/corner/0006.webp"); }
&7 { --wc : url("/assets/waterColorMasks/corner/0007.webp"); }
&8 { --wc : url("/assets/waterColorMasks/corner/0008.webp"); }
&9 { --wc : url("/assets/waterColorMasks/corner/0009.webp"); }
&10 { --wc : url("/assets/waterColorMasks/corner/0010.webp"); }
&11 { --wc : url("/assets/waterColorMasks/corner/0011.webp"); }
&12 { --wc : url("/assets/waterColorMasks/corner/0012.webp"); }
&13 { --wc : url("/assets/waterColorMasks/corner/0013.webp"); }
&14 { --wc : url("/assets/waterColorMasks/corner/0014.webp"); }
&15 { --wc : url("/assets/waterColorMasks/corner/0015.webp"); }
&16 { --wc : url("/assets/waterColorMasks/corner/0016.webp"); }
&17 { --wc : url("/assets/waterColorMasks/corner/0017.webp"); }
&18 { --wc : url("/assets/waterColorMasks/corner/0018.webp"); }
&19 { --wc : url("/assets/waterColorMasks/corner/0019.webp"); }
&20 { --wc : url("/assets/waterColorMasks/corner/0020.webp"); }
&21 { --wc : url("/assets/waterColorMasks/corner/0021.webp"); }
&22 { --wc : url("/assets/waterColorMasks/corner/0022.webp"); }
&23 { --wc : url("/assets/waterColorMasks/corner/0023.webp"); }
&24 { --wc : url("/assets/waterColorMasks/corner/0024.webp"); }
&25 { --wc : url("/assets/waterColorMasks/corner/0025.webp"); }
&26 { --wc : url("/assets/waterColorMasks/corner/0026.webp"); }
&27 { --wc : url("/assets/waterColorMasks/corner/0027.webp"); }
&28 { --wc : url("/assets/waterColorMasks/corner/0028.webp"); }
&29 { --wc : url("/assets/waterColorMasks/corner/0029.webp"); }
&30 { --wc : url("/assets/waterColorMasks/corner/0030.webp"); }
&31 { --wc : url("/assets/waterColorMasks/corner/0031.webp"); }
&32 { --wc : url("/assets/waterColorMasks/corner/0032.webp"); }
&33 { --wc : url("/assets/waterColorMasks/corner/0033.webp"); }
&34 { --wc : url("/assets/waterColorMasks/corner/0034.webp"); }
&35 { --wc : url("/assets/waterColorMasks/corner/0035.webp"); }
&36 { --wc : url("/assets/waterColorMasks/corner/0036.webp"); }
&37 { --wc : url("/assets/waterColorMasks/corner/0037.webp"); }
&1 { --wc : url('/assets/waterColorMasks/corner/0001.webp'); }
&2 { --wc : url('/assets/waterColorMasks/corner/0002.webp'); }
&3 { --wc : url('/assets/waterColorMasks/corner/0003.webp'); }
&4 { --wc : url('/assets/waterColorMasks/corner/0004.webp'); }
&5 { --wc : url('/assets/waterColorMasks/corner/0005.webp'); }
&6 { --wc : url('/assets/waterColorMasks/corner/0006.webp'); }
&7 { --wc : url('/assets/waterColorMasks/corner/0007.webp'); }
&8 { --wc : url('/assets/waterColorMasks/corner/0008.webp'); }
&9 { --wc : url('/assets/waterColorMasks/corner/0009.webp'); }
&10 { --wc : url('/assets/waterColorMasks/corner/0010.webp'); }
&11 { --wc : url('/assets/waterColorMasks/corner/0011.webp'); }
&12 { --wc : url('/assets/waterColorMasks/corner/0012.webp'); }
&13 { --wc : url('/assets/waterColorMasks/corner/0013.webp'); }
&14 { --wc : url('/assets/waterColorMasks/corner/0014.webp'); }
&15 { --wc : url('/assets/waterColorMasks/corner/0015.webp'); }
&16 { --wc : url('/assets/waterColorMasks/corner/0016.webp'); }
&17 { --wc : url('/assets/waterColorMasks/corner/0017.webp'); }
&18 { --wc : url('/assets/waterColorMasks/corner/0018.webp'); }
&19 { --wc : url('/assets/waterColorMasks/corner/0019.webp'); }
&20 { --wc : url('/assets/waterColorMasks/corner/0020.webp'); }
&21 { --wc : url('/assets/waterColorMasks/corner/0021.webp'); }
&22 { --wc : url('/assets/waterColorMasks/corner/0022.webp'); }
&23 { --wc : url('/assets/waterColorMasks/corner/0023.webp'); }
&24 { --wc : url('/assets/waterColorMasks/corner/0024.webp'); }
&25 { --wc : url('/assets/waterColorMasks/corner/0025.webp'); }
&26 { --wc : url('/assets/waterColorMasks/corner/0026.webp'); }
&27 { --wc : url('/assets/waterColorMasks/corner/0027.webp'); }
&28 { --wc : url('/assets/waterColorMasks/corner/0028.webp'); }
&29 { --wc : url('/assets/waterColorMasks/corner/0029.webp'); }
&30 { --wc : url('/assets/waterColorMasks/corner/0030.webp'); }
&31 { --wc : url('/assets/waterColorMasks/corner/0031.webp'); }
&32 { --wc : url('/assets/waterColorMasks/corner/0032.webp'); }
&33 { --wc : url('/assets/waterColorMasks/corner/0033.webp'); }
&34 { --wc : url('/assets/waterColorMasks/corner/0034.webp'); }
&35 { --wc : url('/assets/waterColorMasks/corner/0035.webp'); }
&36 { --wc : url('/assets/waterColorMasks/corner/0036.webp'); }
&37 { --wc : url('/assets/waterColorMasks/corner/0037.webp'); }
}
}
@@ -425,17 +428,6 @@ body { counter-reset : page-numbers 0; }
}
}
//*****************************
// * BLANK LINE
// *****************************/
.page {
.blank {
height : 1em;
margin-top : 0;
& + * { margin-top : 0; }
}
}
//*****************************
// * WIDE
// *****************************/
@@ -446,6 +438,11 @@ body { counter-reset : page-numbers 0; }
margin-bottom : 1em;
& + * { margin-top : 0; }
}
.blank {
height : 1em;
margin-top : 0;
& + * { margin-top : 0; }
}
}
//*****************************
@@ -470,8 +467,8 @@ body { counter-reset : page-numbers 0; }
height : 1.5cm;
margin : 0 auto;
background-color : black;
-webkit-mask : url("/assets/naturalCritLogoWhite.svg") center / contain no-repeat;
mask : url("/assets/naturalCritLogoWhite.svg") center / contain no-repeat;
-webkit-mask : url('/assets/naturalCritLogoWhite.svg') center / contain no-repeat;
mask : url('/assets/naturalCritLogoWhite.svg') center / contain no-repeat;
}
.homebreweryIcon.red { background-color : red; }
.homebreweryIcon.gold { background-image : linear-gradient(to top left, brown 22.5%, gold 40%, white 60%, gold 67.5%, brown 82.5%); }
@@ -495,10 +492,9 @@ body { counter-reset : page-numbers 0; }
.pageNumber { left : 30px; }
}
.resetCounting {
counter-set : page-numbers 1;
}
.resetCounting { counter-set : page-numbers 1; }
<<<<<<< HEAD
&:not(:has(.skipCounting)) {
counter-increment : page-numbers;
}
@@ -568,5 +564,122 @@ body { counter-reset : page-numbers 0; }
.ol-noIndent ol li:not(:last-child) {
margin-bottom: 0.5em;
}
=======
&:not(:has(.skipCounting)) { counter-increment : page-numbers; }
>>>>>>> master
}
}
// *****************************
// * INDEX
// *****************************/
.page {
.index {
ul ul { margin : 0; }
ul {
padding-left : 0;
text-indent : 0;
list-style-type : none;
}
& > ul > li {
padding-left : 1.5em;
text-indent : -1.5em;
}
}
}
// *****************************
// * TABLE OF CONTENTS
// *****************************/
// Default Exclusions
// Anything not exlcuded is included, default Headers are H1, H2, and H3.
h4,
h5,
h6,
.page:has(.frontCover),
.page:has(.backCover),
.page:has(.insideCover),
.noToC,
.toc { --TOC : exclude; }
.tocDepthH2 :is(h1, h2) {--TOC : include; }
.tocDepthH3 :is(h1, h2, h3) {--TOC : include; }
.tocDepthH4 :is(h1, h2, h3, h4) {--TOC : include; }
.tocDepthH5 :is(h1, h2, h3, h4, h5) {--TOC : include; }
.tocDepthH6 :is(h1, h2, h3, h4, h5, h6) {--TOC : include; }
.tocIncludeH1 h1 {--TOC : include; }
.tocIncludeH2 h2 {--TOC : include; }
.tocIncludeH3 h3 {--TOC : include; }
.tocIncludeH4 h4 {--TOC : include; }
.tocIncludeH5 h5 {--TOC : include; }
.tocIncludeH6 h6 {--TOC : include; }
.page {
&:has(.toc)::after { display : none; }
.toc {
-webkit-column-break-inside : avoid;
page-break-inside : avoid;
break-inside : avoid;
h1 {
margin-bottom : 0.3cm;
text-align : center;
}
a {
display : inline;
color : inherit;
text-decoration : none;
&:hover { text-decoration : underline; }
}
h4 {
margin-top : 0.2cm;
line-height : 0.4cm;
& + ul li { line-height : 1.2em; }
}
ul {
padding-left : 0;
margin-top : 0;
list-style-type : none;
a {
display : flex;
flex-flow : row nowrap;
justify-content : space-between;
width : 100%;
}
li + li h3 {
margin-top : 0.26cm;
line-height : 1em;
}
h3 span:first-child::after { border : none; }
span {
display : contents;
&:first-child::after {
bottom : 0.08cm;
flex : 1;
margin-right : 0.16cm;
margin-bottom : 0.08cm;
margin-left : 0.08cm; /* Spacing before dot leaders */
content : '';
border-bottom : 0.05cm dotted #000000;
}
&:last-child {
display : inline-block;
align-self : flex-end;
font-size : 0.34cm;
font-weight : normal;
}
}
ul { /* List indent */
margin-left : 1em;
}
}
&.wide {
.useColumns(0.96, @fillMode: balance);
}
}
.toc.wide li { break-inside : auto; }
}