// @mixin flex { // property: value; // } // TODO: convert to SASS // https://sass-lang.com/guide body { margin:0px; } @mixin flex { display: flex; flex-flow: column nowrap; justify-content: flex-start; align-items: stretch; //gap: 0.5mm; } .vbox { @include flex; flex-flow: column nowrap; } .hbox { @include flex; flex-flow: row nowrap; } .rjust { text-align: right; } .grow { flex: 1 1 auto; } .fjomp_card { --color-border: MidnightBlue; --color-bg-figure: white; --color-bg: PaleTurquoise; // PaleTurquoise; --color-bg-body: LightCyan; // PaleTurquoise; --color-bg-frame: PaleTurquoise; // LightSkyBlue; --color-bg-costbar: SandyBrown; // DarkOrange; --color-text-title: MidnightBlue; --color-text-body: black; --color-text-costbar: white; --color-shadow-costbar: +0.08em 0 0.05em Maroon, -0.08em 0 0.05em Maroon, 0 0.08em 0.05em Maroon, 0 -0.08em 0.05em Maroon; --figure-color: #555; --figure-size: 0.9in; --figure-size: 1.35in; --figure-size: 1.5in; @include flex; flex-flow: column nowrap; width: 2.5in; height: 3.5in; box-sizing: border-box; border-style: solid; border-radius: 0mm; border-width: 0.3mm; border-color: var(--color-border); background-color: var(--color-bg); overflow: hidden; font-size: 2.5mm; font-family: sans-serif; header { font-family: montserrat, sans-serif; font-style: normal; font-weight: 200; font-size: 1.8em; line-height: 1em; //margin-left: -1em; border-radius: 1mm 1mm 0 0; text-align: center; background-color: var(--color-bg-frame); color: var(--color-text-title); } .bar { background-color: var(--color-bg-costbar); color: var(--color-text-costbar); text-shadow: var(--color-shadow-costbar); display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; justify-content: center; text-align: center; font-size: 1.1em; section { margin-top: 1mm; font-size: 0.8em; margin-left: 0.8mm; margin-right: 0.8mm; line-height: 0.9em; } } figure { background-color: var(--color-bg-figure); overflow: hidden; position: relative; min-height: var(--figure-size); min-width: var(--figure-size); margin: 0; .layer { color: var(--figure-color); position: absolute; top: 0; right: 0; left: 0; bottom: 0; height: var(--figure-size); width: var(--figure-size); margin: auto; text-align: center; >* { width: 100%; height: 100%; } img { width: calc(var(--figure-size)); height: calc(var(--figure-size)); object-fit: contain; } img.colored { transform: translateY(-10000px); filter: drop-shadow(0px 10000px var(--figure-color)); } .mdi, .fa, .oi, .material-icons.figure { font-size: calc(var(--figure-size) * 0.9); line-height: var(--figure-size); } .lnr { font-size: calc(var(--figure-size) * 0.8); line-height: calc(var(--figure-size) * 0.95); } } } .description { flex: 1 1 auto; // grow shrink basis margin: 1mm; border-radius: 1mm; background-color: var(--color-bg-body); color: var(--color-text-body); font-size: 0.9em; //position: relative; } .range-grid { width: 0.75in; height: 0.75in; box-sizing: border-box; border-style: solid; border-radius: 0.5mm; border-width: 0.3mm; border-color: var(--color-border); display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr; grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr 1fr; grid-gap: .3mm; padding: .3mm; .label { z-index: 100; display: block; grid-row-start: 1; grid-row-end: 3; grid-column-start: 1; grid-column-end: 8; text-align: center; text-shadow: +0.5mm 0 0.5mm white, -0.5mm 0 0.5mm white, 0 0.5mm 0.5mm white, 0 -0.5mm 0.5mm white; } >* { overflow: hidden; } margin-right: -0.3mm; // card border } .range-grid + .range-grid { margin-top: -0.3mm; // border width } }