
/*

* Typesetting Utilities — Blank Page Weasy Theme
* These classes control page layout when rendered natively by WeasyPrint.
* They are the production counterparts to the labeled versions
* visible in the editor (editor-style.css).
* Apply these classes in your HTML to control breaks, spacing,
* alignment, and element behavior across printed pages.
* v1.7 (2026-05): Two-column classes (.two-col-snake, .two-col-justified)
* and .full-width were retired. Text-alignment classes moved here
* from the plugin's Element Styles tab, where they fought container
* classes asymmetrically.
*/

a {
    color: #186b8c !important;
    font-weight: bold !important;
    text-decoration: underline !important;
}


a {
    color: #186b8c !important;
    font-weight: bold !important;
    text-decoration: underline !important;
}

/* 1. Reset the main UL container */
.custom-bullet-list-12pxbtw {
    list-style-type: none;
    padding-left: 0;
}

.custom-bullet-list-9pxbtw {
    list-style-type: none;
    padding-left: 0;
}


/* 2. Set the space BETWEEN items and make room for the bullet */
.custom-bullet-list-12pxbtw li {
    position: relative;
    padding-left: 0.25in; /* Creates the indent for the bullet */
    margin-bottom: 12px;  /* Spacing between the list items */
}

.custom-bullet-list-9pxbtw li {
    position: relative;
    padding-left: 0.25in; /* Creates the indent for the bullet */
    margin-bottom: 9px;  /* Spacing between the list items */
}


/* 3. Remove the extra space under the final item */
.custom-bullet-list-12pxbtw li:last-child {
    margin-bottom: 0;
}

.custom-bullet-list-9pxbtw li:last-child {
    margin-bottom: 0;
}



/* 4. Draw the custom 1/8-inch blue dot */
.custom-bullet-list-12pxbtw li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.4em; /* Adjust this slightly if the dot doesn't align perfectly with your font */
    width: 0.09in;
    height: 0.09in;
    background-color: #186b8c;
    border-radius: 50%;
}

.custom-bullet-list-9pxbtw li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.4em; /* Adjust this slightly if the dot doesn't align perfectly with your font */
    width: 0.09in;
    height: 0.09in;
    background-color: #186b8c;
    border-radius: 50%;
}

.custom-ordered-list-9pxbtw li:not(:last-child) {
  margin-bottom: 9px;
}

.custom-ordered-list-12pxbtw li:not(:last-child) {
  margin-bottom: 12px;
}

.bold-numbers-list li::marker {
  font-weight: bold;
}


  /* use id in the table tag Target the table, the headers, and the standard cells */
  #table-borders-2px-silver,
  #table-borders-2px-silver th,
  #table-borders-2px-silver td {
    border: 2px solid silver !important;
    border-collapse: collapse !important;
    padding: 8px;
  }




/* ============================================
PAGE BREAKS
============================================ */

.page-break {
break-before: page;
}

.page-break-right {
break-before: right;
}

/* ============================================
TEXT ALIGNMENT (v1.7 toolkit class)

Apply to any element to control text alignment.
Shorthands (.tl/.tr/.tc/.tj) are provided for terseness.
============================================ */

.text-left,    .tl { text-align: left; }
.text-right,   .tr { text-align: right; }
.text-center,  .tc { text-align: center; }
.text-justify, .tj { text-align: justify; }

/* ============================================
KEEP TOGETHER — prevent splitting across pages
============================================ */

.keep-together {
break-inside: avoid;
}

/* ============================================
SPACERS — vertical space between elements
============================================ */

.spacer-quarter { height: 0.25in; }
.spacer-half    { height: 0.5in; }
.spacer-one     { height: 1in; }
.spacer-two     { height: 2in; }

/* ============================================
LINE SPACING OVERRIDES
============================================ */

.tight {
line-height: 1.3;
}
.tight p {
margin-bottom: 0.4em;
}

.airy {
line-height: 1.85;
}
.airy p {
margin-bottom: 1em;
}

/* ============================================
FONT SIZE OVERRIDES
============================================ */

.small-text {
font-size: 0.85em;
}

.fine-print {
font-size: 0.75em;
line-height: 1.4;
color: #555;
}

/* ============================================
ALIGNMENT AND INDENTATION
============================================ */

.centered-block {
text-align: center;
margin: 1.5em 0;
}

.indented {
margin-left: 1.5em;
margin-right: 1.5em;
}

.indented-deep {
margin-left: 3em;
margin-right: 3em;
}

/* ============================================
EXERCISE AND REFLECTION CONTAINERS
============================================ */

.exercise,
.reflection-questions {
break-inside: avoid;
border: 1pt solid #ccc;
padding: 1em;
margin: 1.2em 0;
background: #fafafa;
}

/* ============================================
REFERENCES (hanging indent)
============================================ */

.references p {
padding-left: 2em;
text-indent: -2em;
font-size: 0.9em;
}

/* ============================================
BREAK CONTROL — keep element with next
============================================ */

.no-break-after {
break-after: avoid;
}

/* ============================================
FULL-PAGE IMAGE / EDITORIAL CARTOON
============================================ */

.full-page-image {
text-align: center;
break-inside: avoid;
margin: 1em 0;
}

.full-page-image img {
max-width: 100%;
height: auto;
display: block;
margin: 0 auto;
}

/* Give a full-page image its own page */
.full-page-image-alone {
break-before: page;
break-after: page;
text-align: center;
display: flex;
align-items: center;
justify-content: center;
min-height: 80%;
}

.full-page-image-alone img {
max-width: 100%;
max-height: 90%;
height: auto;
}