|
|
|
|
|
|
|
|
|
|
|
/* RESET
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
body{
|
|
|
|
background: white;
|
|
|
|
color: black;
|
|
|
|
|
|
|
|
hyphens: auto;
|
|
|
|
}
|
|
|
|
|
|
|
|
body > header{
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
body > section.grid-display > .column-fixed{
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
body > section.grid-display {
|
|
|
|
display: block;
|
|
|
|
padding: 0 !important;
|
|
|
|
}
|
|
|
|
|
|
|
|
.text-content{
|
|
|
|
max-width: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
a, a:visited {
|
|
|
|
color: currentColor;
|
|
|
|
text-decoration-thickness: calc(var(--border-width) * 0.75);
|
|
|
|
}
|
|
|
|
|
|
|
|
.recto section.data-section::after {
|
|
|
|
color: white;
|
|
|
|
}
|
|
|
|
.verso section.data-section::after {
|
|
|
|
color: black;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* VARIABLES
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
:root{
|
|
|
|
/* reduce a bit the lh for print */
|
|
|
|
--lh: 1.3rem;
|
|
|
|
|
|
|
|
--fs-big: 5rem;
|
|
|
|
/* --fs-big: 4.6rem; */
|
|
|
|
--fs-mono-big: 2.4rem;
|
|
|
|
--fs-main: 11pt;
|
|
|
|
|
|
|
|
/* bigger main mono */
|
|
|
|
--fs-mono: 0.75rem;
|
|
|
|
|
|
|
|
/*
|
|
|
|
notes:
|
|
|
|
- 12pt is a bit too much for main text
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* variable for flyer */
|
|
|
|
--bleeds: 5mm;
|
|
|
|
--bleeds-print: 3mm;
|
|
|
|
|
|
|
|
/* A5 */
|
|
|
|
--page-inner-w: 210mm;
|
|
|
|
--page-inner-h: 148mm;
|
|
|
|
--page-w: calc(var(--page-inner-w) + calc(var(--bleeds) * 2));
|
|
|
|
--page-h: calc(var(--page-inner-h) + calc(var(--bleeds) * 2));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
html{
|
|
|
|
font-size: var(--fs-main);
|
|
|
|
}
|
|
|
|
.mono{
|
|
|
|
line-height: var(--lh);
|
|
|
|
}
|
|
|
|
|
|
|
|
/* PRINT LAYOUT
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
.container{
|
|
|
|
position: relative;
|
|
|
|
}
|
|
|
|
.layer{
|
|
|
|
position: absolute;
|
|
|
|
inset: 0;
|
|
|
|
}
|
|
|
|
.bleeds{
|
|
|
|
position: absolute;
|
|
|
|
inset: calc(-1 * var(--bleeds-print));
|
|
|
|
}
|
|
|
|
|
|
|
|
.pad{
|
|
|
|
padding: var(--lh) calc(var(--lh) * 1.5);
|
|
|
|
}
|
|
|
|
|
|
|
|
.page{
|
|
|
|
width: var(--page-w);
|
|
|
|
height: var(--page-h);
|
|
|
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
|
|
|
position: relative;
|
|
|
|
overflow: visible;
|
|
|
|
|
|
|
|
/* https://developer.mozilla.org/en-US/docs/Web/CSS/break-after */
|
|
|
|
break-after: page;
|
|
|
|
page-break-inside: avoid;
|
|
|
|
}
|
|
|
|
|
|
|
|
.page > .page-content{
|
|
|
|
position: relative;
|
|
|
|
box-sizing: border-box;
|
|
|
|
margin: var(--bleeds);
|
|
|
|
top: var(--bleeds);
|
|
|
|
margin-top: 0;
|
|
|
|
width: var(--page-inner-w);
|
|
|
|
height: var(--page-inner-h);
|
|
|
|
}
|
|
|
|
|
|
|
|
.page-rotate{
|
|
|
|
width: var(--page-h);
|
|
|
|
height: var(--page-w);
|
|
|
|
position: absolute;
|
|
|
|
top: 100%;
|
|
|
|
right: 0;
|
|
|
|
transform-origin: top right;
|
|
|
|
transform: rotate(90deg);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* crops mark */
|
|
|
|
:root{
|
|
|
|
|
|
|
|
/* --- variables */
|
|
|
|
|
|
|
|
--crop-marks-w: 1px;
|
|
|
|
--crop-marks-space: 1mm;
|
|
|
|
|
|
|
|
/* --- pre-computed values */
|
|
|
|
|
|
|
|
--crop-mark-gradient:
|
|
|
|
white 0,
|
|
|
|
white var(--crop-marks-w),
|
|
|
|
black var(--crop-marks-w),
|
|
|
|
black calc(var(--crop-marks-w) * 2)
|
|
|
|
;
|
|
|
|
|
|
|
|
--crop-marks-l: linear-gradient(to right, var(--crop-mark-gradient));
|
|
|
|
--crop-marks-r: linear-gradient(to left, var(--crop-mark-gradient));
|
|
|
|
--crop-marks-t: linear-gradient(to bottom, var(--crop-mark-gradient));
|
|
|
|
--crop-marks-b: linear-gradient(to top, var(--crop-mark-gradient));
|
|
|
|
|
|
|
|
--crop-mark-v-sizes: calc(var(--crop-marks-w) * 2) calc(var(--bleeds) - var(--crop-marks-space));
|
|
|
|
--crop-mark-h-sizes: calc(var(--bleeds) - var(--crop-marks-space)) calc(var(--crop-marks-w) * 2);
|
|
|
|
}
|
|
|
|
|
|
|
|
.page::after{
|
|
|
|
content: '';
|
|
|
|
position: absolute;
|
|
|
|
inset: 0;
|
|
|
|
|
|
|
|
background:
|
|
|
|
var(--crop-marks-l), var(--crop-marks-r),
|
|
|
|
var(--crop-marks-l), var(--crop-marks-r),
|
|
|
|
var(--crop-marks-t), var(--crop-marks-b),
|
|
|
|
var(--crop-marks-t), var(--crop-marks-b)
|
|
|
|
;
|
|
|
|
|
|
|
|
background-size:
|
|
|
|
var(--crop-mark-v-sizes), var(--crop-mark-v-sizes),
|
|
|
|
var(--crop-mark-v-sizes), var(--crop-mark-v-sizes),
|
|
|
|
var(--crop-mark-h-sizes), var(--crop-mark-h-sizes),
|
|
|
|
var(--crop-mark-h-sizes), var(--crop-mark-h-sizes)
|
|
|
|
;
|
|
|
|
|
|
|
|
background-position:
|
|
|
|
calc(var(--bleeds) - var(--crop-marks-w)) 0%,
|
|
|
|
calc(var(--page-w) - var(--bleeds) - var(--crop-marks-w)) 0%,
|
|
|
|
calc(var(--bleeds) - var(--crop-marks-w)) 100%,
|
|
|
|
calc(var(--page-w) - var(--bleeds) - var(--crop-marks-w)) 100%,
|
|
|
|
0% calc(var(--bleeds) - var(--crop-marks-w)),
|
|
|
|
0% calc(var(--page-h) - var(--bleeds) - var(--crop-marks-w)),
|
|
|
|
100% calc(var(--bleeds) - var(--crop-marks-w)),
|
|
|
|
100% calc(var(--page-h) - var(--bleeds) - var(--crop-marks-w))
|
|
|
|
;
|
|
|
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
pointer-events: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@media only screen {
|
|
|
|
body{
|
|
|
|
background-color: whitesmoke;
|
|
|
|
}
|
|
|
|
.page{
|
|
|
|
margin: 1cm auto;
|
|
|
|
outline: 1px yellowgreen solid;
|
|
|
|
background: white;
|
|
|
|
}
|
|
|
|
.page-content::after{
|
|
|
|
content: '';
|
|
|
|
position: absolute;
|
|
|
|
inset: 0;
|
|
|
|
outline: 1px green solid;
|
|
|
|
pointer-events: none;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/* FLYER
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
.flyer{
|
|
|
|
--clr-back: white;
|
|
|
|
--clr-text: black;
|
|
|
|
|
|
|
|
--border-width: 0.5px;
|
|
|
|
--border: var(--border-width) solid var(--clr-text);
|
|
|
|
}
|
|
|
|
.flyer section.data-section {
|
|
|
|
padding: calc(var(--lh) * 1.5) 0 0;
|
|
|
|
}
|
|
|
|
.flyer section.data-section > *{
|
|
|
|
z-index: 9;
|
|
|
|
position: relative;
|
|
|
|
}
|
|
|
|
.flyer section.data-section:after{
|
|
|
|
line-height: 1.1;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* RECTO
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
|
|
|
|
.recto__title{
|
|
|
|
margin-left: calc(0 * var(--lh));
|
|
|
|
position: relative;
|
|
|
|
}
|
|
|
|
.recto__title h2{
|
|
|
|
line-height: 0.95;
|
|
|
|
/* display: inline-block; */
|
|
|
|
}
|
|
|
|
.recto__title h2:nth-of-type(2){
|
|
|
|
/* margin-left: calc(var(--lh) * 2); */
|
|
|
|
/* text-align: right;
|
|
|
|
text-align: center; */
|
|
|
|
margin-left: calc(3 * var(--lh));
|
|
|
|
}
|
|
|
|
|
|
|
|
.new-moon-slanted-fvs,
|
|
|
|
.full-moon-slanted-fvs{
|
|
|
|
text-transform: none !important;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.recto__text{
|
|
|
|
display: grid;
|
|
|
|
grid-template-rows: min-content 1fr min-content;
|
|
|
|
gap: calc(var(--lh) * 1);
|
|
|
|
|
|
|
|
padding-top: calc(var(--lh) * 2);
|
|
|
|
padding-bottom: calc(var(--lh) * 1.5);
|
|
|
|
}
|
|
|
|
|
|
|
|
.recto__langs{
|
|
|
|
display: flex;
|
|
|
|
gap: var(--lh);
|
|
|
|
|
|
|
|
/* margin-left: calc(var(--lh) * 2); */
|
|
|
|
|
|
|
|
height: min-content;
|
|
|
|
margin-top: auto;
|
|
|
|
}
|
|
|
|
.recto__langs > *{
|
|
|
|
flex: 0 1 100%;
|
|
|
|
gap: var(--lh);
|
|
|
|
}
|
|
|
|
|
|
|
|
.recto__lang > p{
|
|
|
|
margin: 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* VERSO
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
.verso{
|
|
|
|
--clr-back: black;
|
|
|
|
--clr-text: white;
|
|
|
|
--border: var(--border-width) solid var(--clr-text);
|
|
|
|
}
|
|
|
|
.verso .data-section:after{
|
|
|
|
color: black;
|
|
|
|
}
|
|
|
|
|
|
|
|
.verso__calendar{
|
|
|
|
display: grid;
|
|
|
|
grid-template-rows: 1fr min-content;
|
|
|
|
gap: calc(var(--lh) / 2);
|
|
|
|
}
|
|
|
|
.date-time-info{
|
|
|
|
line-height: var(--lh);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* GRADIENTS
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
.recto{
|
|
|
|
color: black;
|
|
|
|
--border-width: 1px;
|
|
|
|
--border: var(--border-width) solid var(--clr-text);
|
|
|
|
}
|
|
|
|
|
|
|
|
.recto__back{
|
|
|
|
/* display: none; */
|
|
|
|
background: linear-gradient(to bottom,
|
|
|
|
black calc(var(--bleeds-print) + calc(var(--lh) * 0)),
|
|
|
|
white calc(var(--bleeds-print) + calc(var(--lh) * 2.5))
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
.verso{
|
|
|
|
color: white;
|
|
|
|
}
|
|
|
|
|
|
|
|
.verso__back{
|
|
|
|
background: linear-gradient(to top,
|
|
|
|
white calc(var(--bleeds-print) + calc(var(--lh) * 0.5)),
|
|
|
|
black calc(var(--bleeds-print) + calc(var(--lh) * 2.5))
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
/* FOOTERS
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
.recto__footer{
|
|
|
|
display: flex;
|
|
|
|
flex-direction: column;
|
|
|
|
justify-content: flex-end;
|
|
|
|
/* color: white; */
|
|
|
|
/* text-align: right; */
|
|
|
|
|
|
|
|
/* margin-left: 6.7cm;
|
|
|
|
margin-top: calc(-0.25 * var(--lh)); */
|
|
|
|
}
|
|
|
|
.verso__footer{
|
|
|
|
color: black;
|
|
|
|
display: flex;
|
|
|
|
justify-content: flex-end;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* CALENDAR
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
.flyer section.data-section.calendar-content > header{
|
|
|
|
position: absolute;
|
|
|
|
/* top: -0.9em; */
|
|
|
|
right: 0;
|
|
|
|
height: var(--lh);
|
|
|
|
background: black;
|
|
|
|
padding-left: var(--lh);
|
|
|
|
|
|
|
|
top: -1em;
|
|
|
|
padding-top: 1em;
|
|
|
|
}
|
|
|
|
|
|
|
|
.flyer-cal-entry{
|
|
|
|
display: flex;
|
|
|
|
align-items: baseline;
|
|
|
|
height: var(--lh);
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
justify-content: flex-start;
|
|
|
|
gap: var(--lh);
|
|
|
|
}
|
|
|
|
|
|
|
|
.flyer-cal-entry .day {
|
|
|
|
width: 6em;
|
|
|
|
/* margin-right: calc(var(--lh) * 0.5); */
|
|
|
|
}
|
|
|
|
.flyer-cal-entry .phase-name {
|
|
|
|
width: 4.6em;
|
|
|
|
/* margin-left: calc(var(--lh) * 2.5); */
|
|
|
|
|
|
|
|
margin-left: calc(var(--lh) * 2);
|
|
|
|
margin-right: calc(var(--lh) * 1.5);
|
|
|
|
}
|
|
|
|
.flyer-cal-entry > *{
|
|
|
|
flex-grow: 0;
|
|
|
|
background-color: black;
|
|
|
|
}
|
|
|
|
|
|
|
|
.cal-entry__time{
|
|
|
|
flex-grow: 1;
|
|
|
|
background: none;
|
|
|
|
|
|
|
|
margin-left: calc(var(--lh) * 2);
|
|
|
|
}
|
|
|
|
|
|
|
|
.moon-time{
|
|
|
|
background-color: black;
|
|
|
|
padding: 0.2em 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* --- moon drawing */
|
|
|
|
|
|
|
|
.cal-entry__moon {
|
|
|
|
width: calc(var(--lh) * 2);
|
|
|
|
margin-right: 1em;
|
|
|
|
|
|
|
|
width: calc(var(--lh) * 4);
|
|
|
|
}
|
|
|
|
|
|
|
|
.moon-drawing {
|
|
|
|
width: 1em;
|
|
|
|
height: 1em;
|
|
|
|
border-radius: 100%;
|
|
|
|
position: relative;
|
|
|
|
top: 0.2em;
|
|
|
|
}
|
|
|
|
.fullmoon .moon-drawing{
|
|
|
|
background: white;
|
|
|
|
}
|
|
|
|
.newmoon .moon-drawing{
|
|
|
|
border: 0.12em dotted white;
|
|
|
|
box-sizing: border-box;
|
|
|
|
overflow: visible;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* SVG DRAWING
|
|
|
|
===================================================== */
|
|
|
|
|
|
|
|
.recto__drawing svg{
|
|
|
|
display: block;
|
|
|
|
height: 4cm;
|
|
|
|
|
|
|
|
position: absolute;
|
|
|
|
top: 0;
|
|
|
|
right: 0;
|
|
|
|
overflow: visible;
|
|
|
|
}
|
|
|
|
.recto__drawing path{
|
|
|
|
/* fill: none;
|
|
|
|
stroke: black; */
|
|
|
|
/* vector-effect: non-scaling-stroke; */
|
|
|
|
/* stroke-width: calc(var(--border-width) * 0.75); */
|
|
|
|
stroke-width: calc(var(--border-width) * 0.25);
|
|
|
|
stroke-dasharray: 0.25, 0.666;
|
|
|
|
}
|
|
|
|
.recto__drawing #lune{
|
|
|
|
/* stroke-width: calc(var(--border-width) * 2); */
|
|
|
|
stroke-width: calc(var(--border-width) * 0.666);
|
|
|
|
stroke-dasharray: 0.25, 2;
|
|
|
|
}
|