mirror of
https://github.com/Steffo99/bluelib.git
synced 2024-12-22 03:24:20 +00:00
✨ Implement the new variable system
This commit is contained in:
parent
912398ce00
commit
22042bebc6
26 changed files with 3409 additions and 5917 deletions
|
@ -2,6 +2,8 @@
|
|||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<link rel="stylesheet" href="src/targets/skeleton.root.css">
|
||||
<link rel="stylesheet" href="src/targets/paper.root.css">
|
||||
<link rel="stylesheet" href="src/targets/royalblue.root.css">
|
||||
<title>Bluelib 2</title>
|
||||
<style>
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
@import url('https://fonts.googleapis.com/css2?family=Fira+Code&family=Fira+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
|
||||
|
||||
.font-text() {
|
||||
font-family: "Fira Sans", sans-serif;
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
@hex-background: #ffffff;
|
||||
@hex-foreground: #181818;
|
||||
@hex-accent: #181818;
|
||||
|
||||
@hex-red: #c80000;
|
||||
@hex-orange: #c8a500;
|
||||
@hex-yellow: #c8c800;
|
||||
@hex-lime: #00c800;
|
||||
@hex-cyan: #00c8c8;
|
||||
@hex-blue: #0000c8;
|
||||
@hex-magenta: #c800c8;
|
||||
@hex-gray: #808080;
|
||||
|
||||
@hex-link: #009393;
|
||||
@hex-link-hover: #006b6b;
|
||||
@hex-link-active: #004141;
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
@hex-background: #0d193b;
|
||||
@hex-foreground: #a0ccff;
|
||||
@hex-accent: #ffffff;
|
||||
|
||||
@hex-red: #ff7d7d;
|
||||
@hex-orange: #ffbb7d;
|
||||
@hex-yellow: #ffff7d;
|
||||
@hex-lime: #7dff7d;
|
||||
@hex-cyan: #7dffff;
|
||||
@hex-blue: #7d7dff;
|
||||
@hex-magenta: #ff7dff;
|
||||
@hex-gray: #bbbbbb;
|
||||
|
||||
@hex-link: #00caca;
|
||||
@hex-link-hover: #00ffff;
|
||||
@hex-link-active: #a0ffff;
|
24
src/rules/paper.less
Normal file
24
src/rules/paper.less
Normal file
|
@ -0,0 +1,24 @@
|
|||
@{bluelib} {
|
||||
.set-var-rgb(bluelib-background; 255; 255; 255);
|
||||
.set-var-rgb(bluelib-foreground; 24; 24; 24);
|
||||
.set-var-rgb(bluelib-accent; 24; 24; 24);
|
||||
|
||||
.set-var-rgb(bluelib-link; 0; 147; 147);
|
||||
.set-var-rgb(bluelib-link-hover; 0; 107; 107);
|
||||
.set-var-rgb(bluelib-link-active; 0; 65; 65);
|
||||
|
||||
.set-var-rgb(bluelib-red; 200; 0; 0);
|
||||
.set-var-rgb(bluelib-orange; 200; 165; 0);
|
||||
.set-var-rgb(bluelib-yellow; 200; 200; 0);
|
||||
.set-var-rgb(bluelib-lime; 0; 200; 0);
|
||||
.set-var-rgb(bluelib-cyan; 0; 200; 200);
|
||||
.set-var-rgb(bluelib-blue; 0; 0; 200);
|
||||
.set-var-rgb(bluelib-magenta; 200; 0; 200);
|
||||
.set-var-rgb(bluelib-gray; 128; 128; 128);
|
||||
|
||||
--bluelib-polarity: -1;
|
||||
|
||||
.set-var-font(bluelib-title; sans-serif; bold);
|
||||
.set-var-font(bluelib-text; sans-serif; normal);
|
||||
.set-var-font(bluelib-code; monospace; normal);
|
||||
}
|
26
src/rules/royalblue.less
Normal file
26
src/rules/royalblue.less
Normal file
|
@ -0,0 +1,26 @@
|
|||
@import url('https://fonts.googleapis.com/css2?family=Fira+Code&family=Fira+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
|
||||
|
||||
@{bluelib} {
|
||||
.set-var-rgb(bluelib-background; 13; 25; 59);
|
||||
.set-var-rgb(bluelib-foreground; 160; 204; 255);
|
||||
.set-var-rgb(bluelib-accent; 255; 255; 255);
|
||||
|
||||
.set-var-rgb(bluelib-red; 255; 125; 125);
|
||||
.set-var-rgb(bluelib-orange; 255; 187; 125);
|
||||
.set-var-rgb(bluelib-yellow; 255; 255; 125);
|
||||
.set-var-rgb(bluelib-lime; 125; 255; 125);
|
||||
.set-var-rgb(bluelib-cyan; 125; 255; 255);
|
||||
.set-var-rgb(bluelib-blue; 125; 125; 255);
|
||||
.set-var-rgb(bluelib-magenta; 255; 125; 255);
|
||||
.set-var-rgb(bluelib-gray; 187; 187; 187);
|
||||
|
||||
.set-var-rgb(bluelib-link; 0; 202; 202);
|
||||
.set-var-rgb(bluelib-link-hover; 0; 255; 255);
|
||||
.set-var-rgb(bluelib-link-active; 160; 255; 255);
|
||||
|
||||
--bluelib-polarity: 1;
|
||||
|
||||
.set-var-font(bluelib-title; "Fira Sans", sans-serif; 500);
|
||||
.set-var-font(bluelib-text; "Fira Sans", sans-serif; 400);
|
||||
.set-var-font(bluelib-code; "Fira Code", sans-serif; 400);
|
||||
}
|
480
src/rules/skeleton.less
vendored
480
src/rules/skeleton.less
vendored
|
@ -3,15 +3,45 @@
|
|||
/// Elements outside the root won't be styled at all, allowing Bluelib's styling to be contained in components or modules of a website.
|
||||
|
||||
@{bluelib} {
|
||||
// Get
|
||||
|
||||
// Set the background defined in the palette
|
||||
background-color: @hex-background;
|
||||
/// ===== Palette =====
|
||||
/// The palette used by bluelib is specified at the root level with attributes on the element.
|
||||
/// The palette contains also the fonts bluelib should use.
|
||||
/// By default, bluelib uses the "paper" palette.
|
||||
|
||||
// Set the base color to the foreground defined in the palette
|
||||
.bluelib-color(@hex-foreground);
|
||||
// By default, text should use the main font
|
||||
.font-text();
|
||||
//<editor-fold desc="Rules: Palette">
|
||||
|
||||
// The background color.
|
||||
.set-var-rgb(bluelib-background; 255; 255; 255);
|
||||
// The main text color.
|
||||
.set-var-rgb(bluelib-foreground; 24; 24; 24);
|
||||
// A contrasting color to make important text more visible
|
||||
.set-var-rgb(bluelib-accent; 24; 24; 24);
|
||||
|
||||
// The color of links
|
||||
.set-var-rgb(bluelib-link; 0; 147; 147);
|
||||
|
||||
// Extra builtin colors
|
||||
.set-var-rgb(bluelib-red; 200; 0; 0);
|
||||
.set-var-rgb(bluelib-orange; 200; 165; 0);
|
||||
.set-var-rgb(bluelib-yellow; 200; 200; 0);
|
||||
.set-var-rgb(bluelib-lime; 0; 200; 0);
|
||||
.set-var-rgb(bluelib-cyan; 0; 200; 200);
|
||||
.set-var-rgb(bluelib-blue; 0; 0; 200);
|
||||
.set-var-rgb(bluelib-magenta; 200; 0; 200);
|
||||
.set-var-rgb(bluelib-gray; 128; 128; 128);
|
||||
|
||||
// 1 for dark themes, -1 for light themes
|
||||
--bluelib-polarity: -1;
|
||||
|
||||
// Font to be used in titles
|
||||
.set-var-font(bluelib-title; sans-serif; bold);
|
||||
// Font to be used in the rest of the text
|
||||
.set-var-font(bluelib-text; sans-serif; normal);
|
||||
// Font to be used in monospace contexts
|
||||
.set-var-font(bluelib-code; monospace; normal);
|
||||
|
||||
//</editor-fold>
|
||||
|
||||
/// ===== Macros =====
|
||||
/// Less allows defining variables to reduce the amount of boilerplate code to write while defining the rules.
|
||||
|
@ -19,114 +49,213 @@
|
|||
|
||||
//<editor-fold desc="Rules: Macros">
|
||||
|
||||
@b0: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.025
|
||||
@rgb-background: rgb(
|
||||
var(--bluelib-background-r),
|
||||
var(--bluelib-background-g),
|
||||
var(--bluelib-background-b)
|
||||
);
|
||||
@b1: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.100
|
||||
@rgb-foreground: rgb(
|
||||
var(--bluelib-foreground-r),
|
||||
var(--bluelib-foreground-g),
|
||||
var(--bluelib-foreground-b)
|
||||
);
|
||||
@b2: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.200
|
||||
);
|
||||
@b3: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.300
|
||||
);
|
||||
@b4: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.400
|
||||
);
|
||||
@b5: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.500
|
||||
);
|
||||
@b6: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.600
|
||||
);
|
||||
@b7: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.700
|
||||
);
|
||||
@b8: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.800
|
||||
);
|
||||
@b9: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.900
|
||||
);
|
||||
@bA: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
1.000
|
||||
);
|
||||
@bB: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 10)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 10)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 10)),
|
||||
1.000
|
||||
);
|
||||
@bC: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 20)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 20)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 20)),
|
||||
1.000
|
||||
);
|
||||
@bD: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 30)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 30)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 30)),
|
||||
1.000
|
||||
);
|
||||
@bE: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 40)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 40)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 40)),
|
||||
1.000
|
||||
);
|
||||
@bF: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)),
|
||||
1.000
|
||||
@rgb-accent: rgb(
|
||||
var(--bluelib-accent-r),
|
||||
var(--bluelib-accent-g),
|
||||
var(--bluelib-accent-b)
|
||||
);
|
||||
|
||||
@bL: rgba(
|
||||
calc(255 * ((var(--bluelib-polarity / 2) * -1) + 0.5)),
|
||||
calc(255 * ((var(--bluelib-polarity / 2) * -1) + 0.5)),
|
||||
calc(255 * ((var(--bluelib-polarity / 2) * -1) + 0.5)),
|
||||
1.000
|
||||
@rgb-link: rgb(
|
||||
var(--bluelib-link-r),
|
||||
var(--bluelib-link-g),
|
||||
var(--bluelib-link-b)
|
||||
);
|
||||
@bT: rgba(
|
||||
calc(255 * (var(--bluelib-polarity / 2) + 0.5)),
|
||||
calc(255 * (var(--bluelib-polarity / 2) + 0.5)),
|
||||
calc(255 * (var(--bluelib-polarity / 2) + 0.5)),
|
||||
1.000
|
||||
|
||||
@rgb-red: rgb(
|
||||
var(--bluelib-red-r),
|
||||
var(--bluelib-red-g),
|
||||
var(--bluelib-red-b)
|
||||
);
|
||||
@rgb-orange: rgb(
|
||||
var(--bluelib-orange-r),
|
||||
var(--bluelib-orange-g),
|
||||
var(--bluelib-orange-b)
|
||||
);
|
||||
@rgb-yellow: rgb(
|
||||
var(--bluelib-yellow-r),
|
||||
var(--bluelib-yellow-g),
|
||||
var(--bluelib-yellow-b)
|
||||
);
|
||||
@rgb-lime: rgb(
|
||||
var(--bluelib-lime-r),
|
||||
var(--bluelib-lime-g),
|
||||
var(--bluelib-lime-b)
|
||||
);
|
||||
@rgb-cyan: rgb(
|
||||
var(--bluelib-cyan-r),
|
||||
var(--bluelib-cyan-g),
|
||||
var(--bluelib-cyan-b)
|
||||
);
|
||||
@rgb-blue: rgb(
|
||||
var(--bluelib-blue-r),
|
||||
var(--bluelib-blue-g),
|
||||
var(--bluelib-blue-b)
|
||||
);
|
||||
@rgb-magenta: rgb(
|
||||
var(--bluelib-magenta-r),
|
||||
var(--bluelib-magenta-g),
|
||||
var(--bluelib-magenta-b)
|
||||
);
|
||||
@rgb-gray: rgb(
|
||||
var(--bluelib-gray-r),
|
||||
var(--bluelib-gray-g),
|
||||
var(--bluelib-gray-b)
|
||||
);
|
||||
|
||||
@rgb-leaving: rgba(
|
||||
calc(255 * ((var(--bluelib-polarity / 2) * -1) + 0.5)),
|
||||
calc(255 * ((var(--bluelib-polarity / 2) * -1) + 0.5)),
|
||||
calc(255 * ((var(--bluelib-polarity / 2) * -1) + 0.5)),
|
||||
1.000
|
||||
);
|
||||
@rgb-towards: rgba(
|
||||
calc(255 * (var(--bluelib-polarity / 2) + 0.5)),
|
||||
calc(255 * (var(--bluelib-polarity / 2) + 0.5)),
|
||||
calc(255 * (var(--bluelib-polarity / 2) + 0.5)),
|
||||
1.000
|
||||
);
|
||||
|
||||
@c0: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.025
|
||||
);
|
||||
@c1: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.100
|
||||
);
|
||||
@c2: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.200
|
||||
);
|
||||
@c3: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.300
|
||||
);
|
||||
@c4: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.400
|
||||
);
|
||||
@c5: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.500
|
||||
);
|
||||
@c6: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.600
|
||||
);
|
||||
@c7: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.700
|
||||
);
|
||||
@c8: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.800
|
||||
);
|
||||
@c9: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
0.900
|
||||
);
|
||||
@cA: rgba(
|
||||
var(--bluelib-color-r),
|
||||
var(--bluelib-color-g),
|
||||
var(--bluelib-color-b),
|
||||
1.000
|
||||
);
|
||||
@cB: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 10)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 10)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 10)),
|
||||
1.000
|
||||
);
|
||||
@cC: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 20)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 20)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 20)),
|
||||
1.000
|
||||
);
|
||||
@cD: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 30)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 30)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 30)),
|
||||
1.000
|
||||
);
|
||||
@cE: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 40)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 40)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 40)),
|
||||
1.000
|
||||
);
|
||||
@cF: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)),
|
||||
1.000
|
||||
);
|
||||
@cG: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 60)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 60)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 60)),
|
||||
1.000
|
||||
);
|
||||
@cH: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 70)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 70)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 70)),
|
||||
1.000
|
||||
);
|
||||
@cI: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 80)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 80)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 80)),
|
||||
1.000
|
||||
);
|
||||
@cJ: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 90)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 90)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 90)),
|
||||
1.000
|
||||
);
|
||||
@cK: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 100)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 100)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 100)),
|
||||
1.000
|
||||
);
|
||||
@cL: rgba(
|
||||
calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 110)),
|
||||
calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 110)),
|
||||
calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 110)),
|
||||
1.000
|
||||
);
|
||||
|
||||
//</editor-fold>
|
||||
|
@ -147,10 +276,26 @@
|
|||
// Bluelib magic!
|
||||
// This rule sets the color of all text to be equal to the current .bluelib-color() at 100% opacity.
|
||||
// Thanks, CSS variables!
|
||||
color: @bA;
|
||||
color: @cA;
|
||||
|
||||
}
|
||||
|
||||
/// ===== Root =====
|
||||
/// The root element has some rules itself.
|
||||
|
||||
//<editor-fold desc="Rules: Root">
|
||||
|
||||
// Set the background defined in the palette
|
||||
background-color: @rgb-background;
|
||||
|
||||
// Set the base color to the foreground defined in the palette
|
||||
.map-var-rgb(bluelib-color; bluelib-foreground);
|
||||
|
||||
// Set the base font
|
||||
.use-var-font(bluelib-text);
|
||||
|
||||
//</editor-fold>
|
||||
|
||||
//</editor-fold>
|
||||
|
||||
/// ===== Layouts =====
|
||||
|
@ -259,8 +404,8 @@
|
|||
// Panels should try to fill the most space possible
|
||||
width: 100%;
|
||||
|
||||
background-color: @b0;
|
||||
border-color: @b1;
|
||||
background-color: @c0;
|
||||
border-color: @c1;
|
||||
|
||||
// The first and last elements of a panel should not have a margin
|
||||
> @{all} {
|
||||
|
@ -337,15 +482,15 @@
|
|||
@{separator} {
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: @b5;
|
||||
border-color: @c5;
|
||||
}
|
||||
|
||||
@{separator-light} {
|
||||
border-color: @b1;
|
||||
border-color: @c1;
|
||||
}
|
||||
|
||||
@{separator-heavy} {
|
||||
border-color: @bA;
|
||||
border-color: @cA;
|
||||
}
|
||||
|
||||
//</editor-fold>
|
||||
|
@ -409,47 +554,47 @@
|
|||
}
|
||||
|
||||
// They should use the current bluelib color
|
||||
border-color: @b3;
|
||||
color: @bA;
|
||||
background-color: @b0;
|
||||
border-color: @c3;
|
||||
color: @cA;
|
||||
background-color: @c0;
|
||||
|
||||
// Both for themselves and their placeholder
|
||||
&::placeholder {
|
||||
color: @b4;
|
||||
color: @c4;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
// They should become lighter if hovered
|
||||
&:hover {
|
||||
border-color: @b6;
|
||||
color: @bC;
|
||||
background-color: @b1;
|
||||
border-color: @c6;
|
||||
color: @cC;
|
||||
background-color: @c1;
|
||||
|
||||
&::placeholder {
|
||||
color: @b7;
|
||||
color: @c7;
|
||||
}
|
||||
}
|
||||
|
||||
// And even lighter if focused
|
||||
&:focus {
|
||||
border-color: @bA;
|
||||
color: @bF;
|
||||
background-color: @b2;
|
||||
border-color: @cA;
|
||||
color: @cF;
|
||||
background-color: @c2;
|
||||
|
||||
&::placeholder {
|
||||
color: @b7;
|
||||
color: @c7;
|
||||
}
|
||||
}
|
||||
|
||||
// Unless they are disabled
|
||||
&@{status-disabled} {
|
||||
&:hover, &:focus {
|
||||
border-color: @b3;
|
||||
color: @bA;
|
||||
background-color: @b0;
|
||||
border-color: @c3;
|
||||
color: @cA;
|
||||
background-color: @c0;
|
||||
|
||||
&::placeholder {
|
||||
color: @b4;
|
||||
color: @c4;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -492,7 +637,7 @@
|
|||
|
||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||
@{input-option}, @{input-optgroup} {
|
||||
background-color: @hex-background;
|
||||
.use-var-rgb(background-color; bluelib-background);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -520,7 +665,7 @@
|
|||
|
||||
@{input-option} {
|
||||
font-weight: normal;
|
||||
color: @bA;
|
||||
color: @cA;
|
||||
|
||||
// Options should be slightly padded too
|
||||
padding: 4px;
|
||||
|
@ -529,7 +674,7 @@
|
|||
@{input-optgroup} {
|
||||
// Style option groups as titles
|
||||
font-weight: bold;
|
||||
color: @hex-accent;
|
||||
color: @rgb-accent;
|
||||
|
||||
// Options groups should be slightly padded too
|
||||
padding: 4px;
|
||||
|
@ -564,17 +709,17 @@
|
|||
// Give them a good clicking feedback
|
||||
// (sadly it doesn't work if using the keyboard)
|
||||
&:active {
|
||||
border-color: @bC;
|
||||
color: @bF;
|
||||
background-color: @b3;
|
||||
border-color: @cC;
|
||||
color: @cF;
|
||||
background-color: @c3;
|
||||
}
|
||||
|
||||
// But not if they're disabled
|
||||
@{status-disabled} {
|
||||
&:active {
|
||||
border-color: @b3;
|
||||
color: @bA;
|
||||
background-color: @b0;
|
||||
border-color: @c3;
|
||||
color: @cA;
|
||||
background-color: @c0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -609,19 +754,19 @@
|
|||
|
||||
// If the element is checked, display it
|
||||
&:checked::before {
|
||||
background-color: @b9;
|
||||
background-color: @c9;
|
||||
}
|
||||
|
||||
&:hover:checked::before {
|
||||
background-color: @bB;
|
||||
background-color: @cB;
|
||||
}
|
||||
|
||||
&:focus:checked::before {
|
||||
background-color: @bD;
|
||||
background-color: @cD;
|
||||
}
|
||||
|
||||
&:active:checked::before {
|
||||
background-color: @bD;
|
||||
background-color: @cD;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -680,7 +825,7 @@
|
|||
text-align: right;
|
||||
|
||||
// Give the labels the accent color
|
||||
.bluelib-color(@hex-accent);
|
||||
.map-var-rgb(bluelib-color, bluelib-accent);
|
||||
// And make them slightly bold
|
||||
font-weight: 500;
|
||||
}
|
||||
|
@ -705,7 +850,7 @@
|
|||
flex-wrap: wrap;
|
||||
width: 100%;
|
||||
|
||||
background-color: @b0;
|
||||
background-color: @c0;
|
||||
padding: 6px;
|
||||
border-radius: 4px;
|
||||
|
||||
|
@ -749,8 +894,8 @@
|
|||
|
||||
@{element-title} {
|
||||
text-align: center;
|
||||
.bluelib-color(@hex-accent);
|
||||
.font-title();
|
||||
.map-var-rgb(bluelib-color, bluelib-accent);
|
||||
.use-var-font(bluelib-title)
|
||||
}
|
||||
|
||||
@{element-paragraph} {
|
||||
|
@ -762,14 +907,15 @@
|
|||
}
|
||||
|
||||
@{element-anchor} {
|
||||
.bluelib-color(@hex-link);
|
||||
.map-var-rgb(bluelib-color, bluelib-link);
|
||||
|
||||
text-decoration-line: underline;
|
||||
text-decoration-style: solid;
|
||||
text-decoration-color: currentColor;
|
||||
text-decoration-thickness: 1px;
|
||||
|
||||
&:hover, &:focus {
|
||||
.bluelib-color(@hex-link-hover);
|
||||
color: @cF;
|
||||
}
|
||||
|
||||
&:focus-visible {
|
||||
|
@ -777,18 +923,14 @@
|
|||
}
|
||||
|
||||
&:active {
|
||||
.bluelib-color(@hex-link-active);
|
||||
color: @cL;
|
||||
}
|
||||
|
||||
&@{status-disabled} {
|
||||
text-decoration-style: dashed;
|
||||
|
||||
&:hover, &:focus {
|
||||
.bluelib-color(@hex-link);
|
||||
}
|
||||
|
||||
&:active {
|
||||
.bluelib-color(@hex-link);
|
||||
&:hover, &:focus, &:active {
|
||||
color: @cA;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -841,7 +983,7 @@
|
|||
|
||||
@{style-bold} {
|
||||
font-weight: bold;
|
||||
.bluelib-color(@hex-accent);
|
||||
.map-var-rgb(bluelib-color, bluelib-accent);
|
||||
}
|
||||
|
||||
@{style-italic} {
|
||||
|
@ -857,11 +999,11 @@
|
|||
}
|
||||
|
||||
@{style-monospace} {
|
||||
.font-code();
|
||||
.use-var-font(bluelib-code);
|
||||
}
|
||||
|
||||
@{style-keyboard} {
|
||||
.font-code();
|
||||
.use-var-font(bluelib-code);
|
||||
padding: 2px 4px;
|
||||
border: 2px outset;
|
||||
border-radius: 4px;
|
||||
|
@ -870,35 +1012,35 @@
|
|||
// --- Colors ---
|
||||
|
||||
@{color-red} {
|
||||
.bluelib-color(@hex-red)
|
||||
.map-var-rgb(bluelib-color, bluelib-red);
|
||||
}
|
||||
|
||||
@{color-orange} {
|
||||
.bluelib-color(@hex-orange)
|
||||
.map-var-rgb(bluelib-color, bluelib-orange);
|
||||
}
|
||||
|
||||
@{color-yellow} {
|
||||
.bluelib-color(@hex-yellow)
|
||||
.map-var-rgb(bluelib-color, bluelib-yellow);
|
||||
}
|
||||
|
||||
@{color-lime} {
|
||||
.bluelib-color(@hex-lime)
|
||||
.map-var-rgb(bluelib-color, bluelib-lime);
|
||||
}
|
||||
|
||||
@{color-cyan} {
|
||||
.bluelib-color(@hex-cyan)
|
||||
.map-var-rgb(bluelib-color, bluelib-cyan);
|
||||
}
|
||||
|
||||
@{color-blue} {
|
||||
.bluelib-color(@hex-blue)
|
||||
.map-var-rgb(bluelib-color, bluelib-blue);
|
||||
}
|
||||
|
||||
@{color-magenta} {
|
||||
.bluelib-color(@hex-magenta)
|
||||
.map-var-rgb(bluelib-color, bluelib-magenta);
|
||||
}
|
||||
|
||||
@{color-gray} {
|
||||
.bluelib-color(@hex-gray)
|
||||
.map-var-rgb(bluelib-color, bluelib-gray);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,662 +1,53 @@
|
|||
@import "../normalize/normalize.css";
|
||||
@font-face {
|
||||
font-family: 'Fira Code';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firacode/v10/uU9eCBsR6Z2vfE9aq3bL0fxyUs4tcw4W_D1sFVc.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 100;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9A4kDNxMZdWfMOD5VvkrCqYTc.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 200;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9f4kDNxMZdWfMOD5VvkrAGQBf_.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 300;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9f4kDNxMZdWfMOD5VvkrBiQxf_.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9C4kDNxMZdWfMOD5VvkojO.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 500;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9f4kDNxMZdWfMOD5VvkrA6Qhf_.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9f4kDNxMZdWfMOD5VvkrAWRRf_.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 700;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9f4kDNxMZdWfMOD5VvkrByRBf_.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 800;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9f4kDNxMZdWfMOD5VvkrBuRxf_.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: italic;
|
||||
font-weight: 900;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9f4kDNxMZdWfMOD5VvkrBKRhf_.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 100;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9C4kDNxMZdWfMOD5Vn9IjO.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 200;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnWKnuQQ.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 300;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnPKruQQ.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9E4kDNxMZdWfMOD5VfkA.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnZKvuQQ.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 600;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnSKzuQQ.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnLK3uQQ.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 800;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnMK7uQQ.ttf) format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Fira Sans';
|
||||
font-style: normal;
|
||||
font-weight: 900;
|
||||
font-display: swap;
|
||||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnFK_uQQ.ttf) format('truetype');
|
||||
}
|
||||
.bluelib {
|
||||
background-color: #ffffff;
|
||||
--bluelib-color-r: 24;
|
||||
--bluelib-color-g: 24;
|
||||
--bluelib-color-b: 24;
|
||||
font-family: "Fira Sans", sans-serif;
|
||||
font-weight: 400;
|
||||
}
|
||||
.bluelib,
|
||||
.bluelib *,
|
||||
.bluelib .all {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
}
|
||||
.bluelib,
|
||||
.bluelib *,
|
||||
.bluelib .all,
|
||||
.bluelib::before,
|
||||
.bluelib *::before,
|
||||
.bluelib .all::before,
|
||||
.bluelib::after,
|
||||
.bluelib *::after,
|
||||
.bluelib .all::after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.bluelib .layout {
|
||||
display: grid;
|
||||
justify-content: stretch;
|
||||
align-items: stretch;
|
||||
width: 100%;
|
||||
}
|
||||
.bluelib .layout-fill {
|
||||
padding: 4px;
|
||||
grid-template-areas: "single";
|
||||
grid-template-columns: 1fr;
|
||||
grid-template-rows: 1fr;
|
||||
}
|
||||
.bluelib .layout-fill-single {
|
||||
grid-area: single;
|
||||
}
|
||||
.bluelib .layout-threecol {
|
||||
padding: 4px;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol {
|
||||
grid-template-areas: "left center right";
|
||||
grid-template-columns: 1fr auto 1fr;
|
||||
grid-template-rows: 1fr;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol {
|
||||
grid-template-areas: "center center" "left right";
|
||||
grid-template-columns: 1fr 1fr;
|
||||
grid-template-rows: auto auto;
|
||||
max-width: 1024px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
}
|
||||
.bluelib .layout-threecol-left {
|
||||
grid-area: left;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol-left {
|
||||
justify-self: end;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol-left {
|
||||
justify-self: stretch;
|
||||
}
|
||||
}
|
||||
.bluelib .layout-threecol-center {
|
||||
grid-area: center;
|
||||
max-width: 1024px;
|
||||
}
|
||||
.bluelib .layout-threecol-right {
|
||||
grid-area: right;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol-right {
|
||||
justify-self: start;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol-right {
|
||||
justify-self: stretch;
|
||||
}
|
||||
}
|
||||
.bluelib .panel {
|
||||
margin: 8px 0;
|
||||
padding: 8px;
|
||||
width: 100%;
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .panel > *:first-child,
|
||||
.bluelib .panel .all:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
.bluelib .panel > *:last-child,
|
||||
.bluelib .panel .all:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.bluelib .panel-box {
|
||||
border-radius: 4px;
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
}
|
||||
.bluelib .panel-blockquote {
|
||||
border-radius: 4px;
|
||||
border-width: 0 0 0 2px;
|
||||
border-style: solid;
|
||||
}
|
||||
.bluelib .panel-aside {
|
||||
border-width: 0;
|
||||
font-size: smaller;
|
||||
}
|
||||
.bluelib .split {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 4px 8px;
|
||||
justify-content: center;
|
||||
}
|
||||
.bluelib .split > .panel {
|
||||
margin: 0;
|
||||
}
|
||||
.bluelib .split > *,
|
||||
.bluelib .split .all {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 0;
|
||||
flex-basis: 0;
|
||||
}
|
||||
.bluelib .split-forcewrap {
|
||||
flex-grow: 0;
|
||||
flex-shrink: 0;
|
||||
flex-basis: 100%;
|
||||
}
|
||||
.bluelib .separator {
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.5);
|
||||
}
|
||||
.bluelib .separator-light {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .separator-heavy {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
}
|
||||
.bluelib img,
|
||||
.bluelib .image {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
object-fit: contain;
|
||||
}
|
||||
.bluelib .image-limit-half {
|
||||
max-height: max(28.2vw, 50vh);
|
||||
}
|
||||
.bluelib .image-limit-quarter {
|
||||
max-height: max(14.1vw, 25vh);
|
||||
}
|
||||
.bluelib .status-disabled {
|
||||
opacity: 50%;
|
||||
}
|
||||
.bluelib .status-disabled,
|
||||
.bluelib .status-disabled *,
|
||||
.bluelib .status-disabled .all {
|
||||
cursor: not-allowed !important;
|
||||
}
|
||||
.bluelib .input {
|
||||
font: inherit;
|
||||
border-style: solid;
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input.status-disabled {
|
||||
border-style: dashed;
|
||||
}
|
||||
.bluelib .input::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.4);
|
||||
opacity: 1;
|
||||
}
|
||||
.bluelib .input:hover {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.6);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 20)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .input:hover::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.7);
|
||||
}
|
||||
.bluelib .input:focus {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.2);
|
||||
}
|
||||
.bluelib .input:focus::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.7);
|
||||
}
|
||||
.bluelib .input.status-disabled:hover,
|
||||
.bluelib .input.status-disabled:focus {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input.status-disabled:hover::placeholder,
|
||||
.bluelib .input.status-disabled:focus::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.4);
|
||||
}
|
||||
.bluelib .input:optional,
|
||||
.bluelib .input:optional::placeholder {
|
||||
font-style: italic;
|
||||
}
|
||||
.bluelib .input:focus-visible {
|
||||
outline: none;
|
||||
}
|
||||
.bluelib .input-field {
|
||||
cursor: text;
|
||||
border-width: 0 0 2px 0;
|
||||
border-radius: 4px 4px 0 0;
|
||||
padding: 6px;
|
||||
}
|
||||
.bluelib .input-select {
|
||||
cursor: context-menu;
|
||||
border-width: 0 0 2px 0;
|
||||
border-radius: 4px 4px 0 0;
|
||||
}
|
||||
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
||||
.bluelib .input-select .input-option,
|
||||
.bluelib .input-select .input-optgroup {
|
||||
background-color: #ffffff;
|
||||
}
|
||||
}
|
||||
.bluelib .input-multiselect {
|
||||
cursor: vertical-text;
|
||||
border-width: 0 0 0 2px;
|
||||
border-radius: 0 4px 4px 0;
|
||||
}
|
||||
.bluelib .input-select,
|
||||
.bluelib .input-multiselect {
|
||||
padding: 6px 4px;
|
||||
}
|
||||
.bluelib .input-select .input-option,
|
||||
.bluelib .input-multiselect .input-option {
|
||||
font-weight: normal;
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
padding: 4px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup,
|
||||
.bluelib .input-multiselect .input-optgroup {
|
||||
font-weight: bold;
|
||||
color: #181818;
|
||||
padding: 4px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup .input-option,
|
||||
.bluelib .input-multiselect .input-optgroup .input-option {
|
||||
padding: 4px 20px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup .input-option::before,
|
||||
.bluelib .input-multiselect .input-optgroup .input-option::before {
|
||||
content: "";
|
||||
}
|
||||
.bluelib .input-button {
|
||||
cursor: pointer;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
padding: 6px 16px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .input-button:active {
|
||||
border-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 20)), 1);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
}
|
||||
.bluelib .input-button .status-disabled:active {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input-checkbox,
|
||||
.bluelib .input-radio {
|
||||
appearance: none;
|
||||
cursor: pointer;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
border-width: 2px;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.bluelib .input-checkbox::before,
|
||||
.bluelib .input-radio::before {
|
||||
display: block;
|
||||
content: "";
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
||||
.bluelib .input-checkbox:checked::before,
|
||||
.bluelib .input-radio:checked::before {
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.9);
|
||||
}
|
||||
.bluelib .input-checkbox:hover:checked::before,
|
||||
.bluelib .input-radio:hover:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 10)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 10)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 10)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox:focus:checked::before,
|
||||
.bluelib .input-radio:focus:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 30)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox:active:checked::before,
|
||||
.bluelib .input-radio:active:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 30)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox {
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .input-checkbox::before {
|
||||
border-radius: 2px;
|
||||
}
|
||||
.bluelib .input-radio {
|
||||
border-radius: 100%;
|
||||
}
|
||||
.bluelib .input-radio::before {
|
||||
border-radius: 100%;
|
||||
}
|
||||
.bluelib .form {
|
||||
display: grid;
|
||||
align-items: center;
|
||||
row-gap: 4px;
|
||||
column-gap: 8px;
|
||||
grid-template-columns: minmax(auto, 1fr) 5fr;
|
||||
}
|
||||
.bluelib .form .form-label {
|
||||
grid-column: 1;
|
||||
justify-self: end;
|
||||
text-align: right;
|
||||
--bluelib-color-r: 24;
|
||||
--bluelib-color-g: 24;
|
||||
--bluelib-color-b: 24;
|
||||
font-weight: 500;
|
||||
}
|
||||
.bluelib .form .form-input {
|
||||
grid-column: 2;
|
||||
justify-self: stretch;
|
||||
width: 100%;
|
||||
}
|
||||
.bluelib .form .form-group {
|
||||
grid-column: 2;
|
||||
display: flex;
|
||||
gap: 8px 16px;
|
||||
justify-content: space-evenly;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
width: 100%;
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
padding: 6px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .form .form-group .form-group-label {
|
||||
display: flex;
|
||||
gap: 6px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: left;
|
||||
}
|
||||
.bluelib .form .form-group .form-group-row {
|
||||
flex-basis: 100%;
|
||||
justify-content: start;
|
||||
}
|
||||
.bluelib .form .form-row {
|
||||
grid-column-start: 1;
|
||||
grid-column-end: 3;
|
||||
display: flex;
|
||||
gap: 8px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
margin-top: 8px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
.bluelib .element-title {
|
||||
text-align: center;
|
||||
--bluelib-color-r: 24;
|
||||
--bluelib-color-g: 24;
|
||||
--bluelib-color-b: 24;
|
||||
font-family: "Fira Sans", sans-serif;
|
||||
font-weight: 500;
|
||||
}
|
||||
.bluelib .element-list-item {
|
||||
margin: 10px 0;
|
||||
}
|
||||
.bluelib .element-anchor {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 147;
|
||||
--bluelib-color-b: 147;
|
||||
text-decoration-line: underline;
|
||||
text-decoration-style: solid;
|
||||
text-decoration-color: currentColor;
|
||||
text-decoration-thickness: 1px;
|
||||
}
|
||||
.bluelib .element-anchor:hover,
|
||||
.bluelib .element-anchor:focus {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 107;
|
||||
--bluelib-color-b: 107;
|
||||
}
|
||||
.bluelib .element-anchor:focus-visible {
|
||||
text-decoration-thickness: 2px;
|
||||
}
|
||||
.bluelib .element-anchor:active {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 65;
|
||||
--bluelib-color-b: 65;
|
||||
}
|
||||
.bluelib .element-anchor.status-disabled {
|
||||
text-decoration-style: dashed;
|
||||
}
|
||||
.bluelib .element-anchor.status-disabled:hover,
|
||||
.bluelib .element-anchor.status-disabled:focus {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 147;
|
||||
--bluelib-color-b: 147;
|
||||
}
|
||||
.bluelib .element-anchor.status-disabled:active {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 147;
|
||||
--bluelib-color-b: 147;
|
||||
}
|
||||
.bluelib .align-left {
|
||||
text-align: left;
|
||||
}
|
||||
.bluelib .align-center {
|
||||
text-align: center;
|
||||
}
|
||||
.bluelib .align-right {
|
||||
text-align: right;
|
||||
}
|
||||
.bluelib .size-xxl {
|
||||
font-size: xx-large;
|
||||
}
|
||||
.bluelib .size-xl {
|
||||
font-size: x-large;
|
||||
}
|
||||
.bluelib .size-l {
|
||||
font-size: large;
|
||||
}
|
||||
.bluelib .size-m {
|
||||
font-size: medium;
|
||||
}
|
||||
.bluelib .size-s {
|
||||
font-size: small;
|
||||
}
|
||||
.bluelib .size-xs {
|
||||
font-size: x-small;
|
||||
}
|
||||
.bluelib .size-xxs {
|
||||
font-size: xx-small;
|
||||
}
|
||||
.bluelib .style-bold {
|
||||
font-weight: bold;
|
||||
--bluelib-color-r: 24;
|
||||
--bluelib-color-g: 24;
|
||||
--bluelib-color-b: 24;
|
||||
}
|
||||
.bluelib .style-italic {
|
||||
font-style: italic;
|
||||
}
|
||||
.bluelib .style-underline {
|
||||
text-decoration-line: underline;
|
||||
}
|
||||
.bluelib .style-strike {
|
||||
text-decoration-line: line-through;
|
||||
}
|
||||
.bluelib .style-monospace {
|
||||
font-family: "Fira Code", monospace;
|
||||
font-weight: 400;
|
||||
}
|
||||
.bluelib .style-keyboard {
|
||||
font-family: "Fira Code", monospace;
|
||||
font-weight: 400;
|
||||
padding: 2px 4px;
|
||||
border: 2px outset;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .color-red {
|
||||
--bluelib-color-r: 200;
|
||||
--bluelib-color-g: 0;
|
||||
--bluelib-color-b: 0;
|
||||
}
|
||||
.bluelib .color-orange {
|
||||
--bluelib-color-r: 200;
|
||||
--bluelib-color-g: 165;
|
||||
--bluelib-color-b: 0;
|
||||
}
|
||||
.bluelib .color-yellow {
|
||||
--bluelib-color-r: 200;
|
||||
--bluelib-color-g: 200;
|
||||
--bluelib-color-b: 0;
|
||||
}
|
||||
.bluelib .color-lime {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 200;
|
||||
--bluelib-color-b: 0;
|
||||
}
|
||||
.bluelib .color-cyan {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 200;
|
||||
--bluelib-color-b: 200;
|
||||
}
|
||||
.bluelib .color-blue {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 0;
|
||||
--bluelib-color-b: 200;
|
||||
}
|
||||
.bluelib .color-magenta {
|
||||
--bluelib-color-r: 200;
|
||||
--bluelib-color-g: 0;
|
||||
--bluelib-color-b: 200;
|
||||
}
|
||||
.bluelib .color-gray {
|
||||
--bluelib-color-r: 128;
|
||||
--bluelib-color-g: 128;
|
||||
--bluelib-color-b: 128;
|
||||
--bluelib-background-r: 255;
|
||||
--bluelib-background-g: 255;
|
||||
--bluelib-background-b: 255;
|
||||
--bluelib-foreground-r: 24;
|
||||
--bluelib-foreground-g: 24;
|
||||
--bluelib-foreground-b: 24;
|
||||
--bluelib-accent-r: 24;
|
||||
--bluelib-accent-g: 24;
|
||||
--bluelib-accent-b: 24;
|
||||
--bluelib-link-r: 0;
|
||||
--bluelib-link-g: 147;
|
||||
--bluelib-link-b: 147;
|
||||
--bluelib-link-hover-r: 0;
|
||||
--bluelib-link-hover-g: 107;
|
||||
--bluelib-link-hover-b: 107;
|
||||
--bluelib-link-active-r: 0;
|
||||
--bluelib-link-active-g: 65;
|
||||
--bluelib-link-active-b: 65;
|
||||
--bluelib-red-r: 200;
|
||||
--bluelib-red-g: 0;
|
||||
--bluelib-red-b: 0;
|
||||
--bluelib-orange-r: 200;
|
||||
--bluelib-orange-g: 165;
|
||||
--bluelib-orange-b: 0;
|
||||
--bluelib-yellow-r: 200;
|
||||
--bluelib-yellow-g: 200;
|
||||
--bluelib-yellow-b: 0;
|
||||
--bluelib-lime-r: 0;
|
||||
--bluelib-lime-g: 200;
|
||||
--bluelib-lime-b: 0;
|
||||
--bluelib-cyan-r: 0;
|
||||
--bluelib-cyan-g: 200;
|
||||
--bluelib-cyan-b: 200;
|
||||
--bluelib-blue-r: 0;
|
||||
--bluelib-blue-g: 0;
|
||||
--bluelib-blue-b: 200;
|
||||
--bluelib-magenta-r: 200;
|
||||
--bluelib-magenta-g: 0;
|
||||
--bluelib-magenta-b: 200;
|
||||
--bluelib-gray-r: 128;
|
||||
--bluelib-gray-g: 128;
|
||||
--bluelib-gray-b: 128;
|
||||
--bluelib-polarity: -1;
|
||||
--bluelib-title-family: sans-serif;
|
||||
--bluelib-title-weight: bold;
|
||||
--bluelib-text-family: sans-serif;
|
||||
--bluelib-text-weight: normal;
|
||||
--bluelib-code-family: monospace;
|
||||
--bluelib-code-weight: normal;
|
||||
}
|
||||
/*# sourceMappingURL=paper.module.css.map */
|
File diff suppressed because one or more lines are too long
|
@ -3,7 +3,6 @@
|
|||
@import (css) "../normalize/normalize.css";
|
||||
|
||||
@import (less) "../fonts/firasans.less";
|
||||
@import (less) "../palettes/paper.less";
|
||||
|
||||
@import (less) "../vars/module.less";
|
||||
@import (less) "../rules/skeleton.less";
|
||||
@import (less) "../rules/paper.less";
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
|
@ -3,7 +3,6 @@
|
|||
@import (css) "../normalize/normalize.css";
|
||||
|
||||
@import (less) "../fonts/firasans.less";
|
||||
@import (less) "../palettes/paper.less";
|
||||
|
||||
@import (less) "../vars/root.less";
|
||||
@import (less) "../rules/skeleton.less";
|
||||
@import (less) "../rules/paper.less";
|
||||
|
|
|
@ -133,530 +133,54 @@
|
|||
src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnFK_uQQ.ttf) format('truetype');
|
||||
}
|
||||
.bluelib {
|
||||
background-color: #0d193b;
|
||||
--bluelib-color-r: 160;
|
||||
--bluelib-color-g: 204;
|
||||
--bluelib-color-b: 255;
|
||||
font-family: "Fira Sans", sans-serif;
|
||||
font-weight: 400;
|
||||
}
|
||||
.bluelib,
|
||||
.bluelib *,
|
||||
.bluelib .all {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
}
|
||||
.bluelib,
|
||||
.bluelib *,
|
||||
.bluelib .all,
|
||||
.bluelib::before,
|
||||
.bluelib *::before,
|
||||
.bluelib .all::before,
|
||||
.bluelib::after,
|
||||
.bluelib *::after,
|
||||
.bluelib .all::after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.bluelib .layout {
|
||||
display: grid;
|
||||
justify-content: stretch;
|
||||
align-items: stretch;
|
||||
width: 100%;
|
||||
}
|
||||
.bluelib .layout-fill {
|
||||
padding: 4px;
|
||||
grid-template-areas: "single";
|
||||
grid-template-columns: 1fr;
|
||||
grid-template-rows: 1fr;
|
||||
}
|
||||
.bluelib .layout-fill-single {
|
||||
grid-area: single;
|
||||
}
|
||||
.bluelib .layout-threecol {
|
||||
padding: 4px;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol {
|
||||
grid-template-areas: "left center right";
|
||||
grid-template-columns: 1fr auto 1fr;
|
||||
grid-template-rows: 1fr;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol {
|
||||
grid-template-areas: "center center" "left right";
|
||||
grid-template-columns: 1fr 1fr;
|
||||
grid-template-rows: auto auto;
|
||||
max-width: 1024px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
}
|
||||
.bluelib .layout-threecol-left {
|
||||
grid-area: left;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol-left {
|
||||
justify-self: end;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol-left {
|
||||
justify-self: stretch;
|
||||
}
|
||||
}
|
||||
.bluelib .layout-threecol-center {
|
||||
grid-area: center;
|
||||
max-width: 1024px;
|
||||
}
|
||||
.bluelib .layout-threecol-right {
|
||||
grid-area: right;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol-right {
|
||||
justify-self: start;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol-right {
|
||||
justify-self: stretch;
|
||||
}
|
||||
}
|
||||
.bluelib .panel {
|
||||
margin: 8px 0;
|
||||
padding: 8px;
|
||||
width: 100%;
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .panel > *:first-child,
|
||||
.bluelib .panel .all:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
.bluelib .panel > *:last-child,
|
||||
.bluelib .panel .all:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.bluelib .panel-box {
|
||||
border-radius: 4px;
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
}
|
||||
.bluelib .panel-blockquote {
|
||||
border-radius: 4px;
|
||||
border-width: 0 0 0 2px;
|
||||
border-style: solid;
|
||||
}
|
||||
.bluelib .panel-aside {
|
||||
border-width: 0;
|
||||
font-size: smaller;
|
||||
}
|
||||
.bluelib .split {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 4px 8px;
|
||||
justify-content: center;
|
||||
}
|
||||
.bluelib .split > .panel {
|
||||
margin: 0;
|
||||
}
|
||||
.bluelib .split > *,
|
||||
.bluelib .split .all {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 0;
|
||||
flex-basis: 0;
|
||||
}
|
||||
.bluelib .split-forcewrap {
|
||||
flex-grow: 0;
|
||||
flex-shrink: 0;
|
||||
flex-basis: 100%;
|
||||
}
|
||||
.bluelib .separator {
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.5);
|
||||
}
|
||||
.bluelib .separator-light {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .separator-heavy {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
}
|
||||
.bluelib img,
|
||||
.bluelib .image {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
object-fit: contain;
|
||||
}
|
||||
.bluelib .image-limit-half {
|
||||
max-height: max(28.2vw, 50vh);
|
||||
}
|
||||
.bluelib .image-limit-quarter {
|
||||
max-height: max(14.1vw, 25vh);
|
||||
}
|
||||
.bluelib .status-disabled {
|
||||
opacity: 50%;
|
||||
}
|
||||
.bluelib .status-disabled,
|
||||
.bluelib .status-disabled *,
|
||||
.bluelib .status-disabled .all {
|
||||
cursor: not-allowed !important;
|
||||
}
|
||||
.bluelib .input {
|
||||
font: inherit;
|
||||
border-style: solid;
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input.status-disabled {
|
||||
border-style: dashed;
|
||||
}
|
||||
.bluelib .input::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.4);
|
||||
opacity: 1;
|
||||
}
|
||||
.bluelib .input:hover {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.6);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 20)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .input:hover::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.7);
|
||||
}
|
||||
.bluelib .input:focus {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.2);
|
||||
}
|
||||
.bluelib .input:focus::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.7);
|
||||
}
|
||||
.bluelib .input.status-disabled:hover,
|
||||
.bluelib .input.status-disabled:focus {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input.status-disabled:hover::placeholder,
|
||||
.bluelib .input.status-disabled:focus::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.4);
|
||||
}
|
||||
.bluelib .input:optional,
|
||||
.bluelib .input:optional::placeholder {
|
||||
font-style: italic;
|
||||
}
|
||||
.bluelib .input:focus-visible {
|
||||
outline: none;
|
||||
}
|
||||
.bluelib .input-field {
|
||||
cursor: text;
|
||||
border-width: 0 0 2px 0;
|
||||
border-radius: 4px 4px 0 0;
|
||||
padding: 6px;
|
||||
}
|
||||
.bluelib .input-select {
|
||||
cursor: context-menu;
|
||||
border-width: 0 0 2px 0;
|
||||
border-radius: 4px 4px 0 0;
|
||||
}
|
||||
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
||||
.bluelib .input-select .input-option,
|
||||
.bluelib .input-select .input-optgroup {
|
||||
background-color: #0d193b;
|
||||
}
|
||||
}
|
||||
.bluelib .input-multiselect {
|
||||
cursor: vertical-text;
|
||||
border-width: 0 0 0 2px;
|
||||
border-radius: 0 4px 4px 0;
|
||||
}
|
||||
.bluelib .input-select,
|
||||
.bluelib .input-multiselect {
|
||||
padding: 6px 4px;
|
||||
}
|
||||
.bluelib .input-select .input-option,
|
||||
.bluelib .input-multiselect .input-option {
|
||||
font-weight: normal;
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
padding: 4px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup,
|
||||
.bluelib .input-multiselect .input-optgroup {
|
||||
font-weight: bold;
|
||||
color: #ffffff;
|
||||
padding: 4px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup .input-option,
|
||||
.bluelib .input-multiselect .input-optgroup .input-option {
|
||||
padding: 4px 20px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup .input-option::before,
|
||||
.bluelib .input-multiselect .input-optgroup .input-option::before {
|
||||
content: "";
|
||||
}
|
||||
.bluelib .input-button {
|
||||
cursor: pointer;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
padding: 6px 16px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .input-button:active {
|
||||
border-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 20)), 1);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
}
|
||||
.bluelib .input-button .status-disabled:active {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input-checkbox,
|
||||
.bluelib .input-radio {
|
||||
appearance: none;
|
||||
cursor: pointer;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
border-width: 2px;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.bluelib .input-checkbox::before,
|
||||
.bluelib .input-radio::before {
|
||||
display: block;
|
||||
content: "";
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
||||
.bluelib .input-checkbox:checked::before,
|
||||
.bluelib .input-radio:checked::before {
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.9);
|
||||
}
|
||||
.bluelib .input-checkbox:hover:checked::before,
|
||||
.bluelib .input-radio:hover:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 10)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 10)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 10)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox:focus:checked::before,
|
||||
.bluelib .input-radio:focus:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 30)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox:active:checked::before,
|
||||
.bluelib .input-radio:active:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 30)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox {
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .input-checkbox::before {
|
||||
border-radius: 2px;
|
||||
}
|
||||
.bluelib .input-radio {
|
||||
border-radius: 100%;
|
||||
}
|
||||
.bluelib .input-radio::before {
|
||||
border-radius: 100%;
|
||||
}
|
||||
.bluelib .form {
|
||||
display: grid;
|
||||
align-items: center;
|
||||
row-gap: 4px;
|
||||
column-gap: 8px;
|
||||
grid-template-columns: minmax(auto, 1fr) 5fr;
|
||||
}
|
||||
.bluelib .form .form-label {
|
||||
grid-column: 1;
|
||||
justify-self: end;
|
||||
text-align: right;
|
||||
--bluelib-color-r: 255;
|
||||
--bluelib-color-g: 255;
|
||||
--bluelib-color-b: 255;
|
||||
font-weight: 500;
|
||||
}
|
||||
.bluelib .form .form-input {
|
||||
grid-column: 2;
|
||||
justify-self: stretch;
|
||||
width: 100%;
|
||||
}
|
||||
.bluelib .form .form-group {
|
||||
grid-column: 2;
|
||||
display: flex;
|
||||
gap: 8px 16px;
|
||||
justify-content: space-evenly;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
width: 100%;
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
padding: 6px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .form .form-group .form-group-label {
|
||||
display: flex;
|
||||
gap: 6px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: left;
|
||||
}
|
||||
.bluelib .form .form-group .form-group-row {
|
||||
flex-basis: 100%;
|
||||
justify-content: start;
|
||||
}
|
||||
.bluelib .form .form-row {
|
||||
grid-column-start: 1;
|
||||
grid-column-end: 3;
|
||||
display: flex;
|
||||
gap: 8px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
margin-top: 8px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
.bluelib .element-title {
|
||||
text-align: center;
|
||||
--bluelib-color-r: 255;
|
||||
--bluelib-color-g: 255;
|
||||
--bluelib-color-b: 255;
|
||||
font-family: "Fira Sans", sans-serif;
|
||||
font-weight: 500;
|
||||
}
|
||||
.bluelib .element-list-item {
|
||||
margin: 10px 0;
|
||||
}
|
||||
.bluelib .element-anchor {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 202;
|
||||
--bluelib-color-b: 202;
|
||||
text-decoration-line: underline;
|
||||
text-decoration-style: solid;
|
||||
text-decoration-color: currentColor;
|
||||
text-decoration-thickness: 1px;
|
||||
}
|
||||
.bluelib .element-anchor:hover,
|
||||
.bluelib .element-anchor:focus {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 255;
|
||||
--bluelib-color-b: 255;
|
||||
}
|
||||
.bluelib .element-anchor:focus-visible {
|
||||
text-decoration-thickness: 2px;
|
||||
}
|
||||
.bluelib .element-anchor:active {
|
||||
--bluelib-color-r: 160;
|
||||
--bluelib-color-g: 255;
|
||||
--bluelib-color-b: 255;
|
||||
}
|
||||
.bluelib .element-anchor.status-disabled {
|
||||
text-decoration-style: dashed;
|
||||
}
|
||||
.bluelib .element-anchor.status-disabled:hover,
|
||||
.bluelib .element-anchor.status-disabled:focus {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 202;
|
||||
--bluelib-color-b: 202;
|
||||
}
|
||||
.bluelib .element-anchor.status-disabled:active {
|
||||
--bluelib-color-r: 0;
|
||||
--bluelib-color-g: 202;
|
||||
--bluelib-color-b: 202;
|
||||
}
|
||||
.bluelib .align-left {
|
||||
text-align: left;
|
||||
}
|
||||
.bluelib .align-center {
|
||||
text-align: center;
|
||||
}
|
||||
.bluelib .align-right {
|
||||
text-align: right;
|
||||
}
|
||||
.bluelib .size-xxl {
|
||||
font-size: xx-large;
|
||||
}
|
||||
.bluelib .size-xl {
|
||||
font-size: x-large;
|
||||
}
|
||||
.bluelib .size-l {
|
||||
font-size: large;
|
||||
}
|
||||
.bluelib .size-m {
|
||||
font-size: medium;
|
||||
}
|
||||
.bluelib .size-s {
|
||||
font-size: small;
|
||||
}
|
||||
.bluelib .size-xs {
|
||||
font-size: x-small;
|
||||
}
|
||||
.bluelib .size-xxs {
|
||||
font-size: xx-small;
|
||||
}
|
||||
.bluelib .style-bold {
|
||||
font-weight: bold;
|
||||
--bluelib-color-r: 255;
|
||||
--bluelib-color-g: 255;
|
||||
--bluelib-color-b: 255;
|
||||
}
|
||||
.bluelib .style-italic {
|
||||
font-style: italic;
|
||||
}
|
||||
.bluelib .style-underline {
|
||||
text-decoration-line: underline;
|
||||
}
|
||||
.bluelib .style-strike {
|
||||
text-decoration-line: line-through;
|
||||
}
|
||||
.bluelib .style-monospace {
|
||||
font-family: "Fira Code", monospace;
|
||||
font-weight: 400;
|
||||
}
|
||||
.bluelib .style-keyboard {
|
||||
font-family: "Fira Code", monospace;
|
||||
font-weight: 400;
|
||||
padding: 2px 4px;
|
||||
border: 2px outset;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .color-red {
|
||||
--bluelib-color-r: 255;
|
||||
--bluelib-color-g: 125;
|
||||
--bluelib-color-b: 125;
|
||||
}
|
||||
.bluelib .color-orange {
|
||||
--bluelib-color-r: 255;
|
||||
--bluelib-color-g: 187;
|
||||
--bluelib-color-b: 125;
|
||||
}
|
||||
.bluelib .color-yellow {
|
||||
--bluelib-color-r: 255;
|
||||
--bluelib-color-g: 255;
|
||||
--bluelib-color-b: 125;
|
||||
}
|
||||
.bluelib .color-lime {
|
||||
--bluelib-color-r: 125;
|
||||
--bluelib-color-g: 255;
|
||||
--bluelib-color-b: 125;
|
||||
}
|
||||
.bluelib .color-cyan {
|
||||
--bluelib-color-r: 125;
|
||||
--bluelib-color-g: 255;
|
||||
--bluelib-color-b: 255;
|
||||
}
|
||||
.bluelib .color-blue {
|
||||
--bluelib-color-r: 125;
|
||||
--bluelib-color-g: 125;
|
||||
--bluelib-color-b: 255;
|
||||
}
|
||||
.bluelib .color-magenta {
|
||||
--bluelib-color-r: 255;
|
||||
--bluelib-color-g: 125;
|
||||
--bluelib-color-b: 255;
|
||||
}
|
||||
.bluelib .color-gray {
|
||||
--bluelib-color-r: 187;
|
||||
--bluelib-color-g: 187;
|
||||
--bluelib-color-b: 187;
|
||||
--bluelib-background-r: 13;
|
||||
--bluelib-background-g: 25;
|
||||
--bluelib-background-b: 59;
|
||||
--bluelib-foreground-r: 160;
|
||||
--bluelib-foreground-g: 204;
|
||||
--bluelib-foreground-b: 255;
|
||||
--bluelib-accent-r: 255;
|
||||
--bluelib-accent-g: 255;
|
||||
--bluelib-accent-b: 255;
|
||||
--bluelib-red-r: 255;
|
||||
--bluelib-red-g: 125;
|
||||
--bluelib-red-b: 125;
|
||||
--bluelib-orange-r: 255;
|
||||
--bluelib-orange-g: 187;
|
||||
--bluelib-orange-b: 125;
|
||||
--bluelib-yellow-r: 255;
|
||||
--bluelib-yellow-g: 255;
|
||||
--bluelib-yellow-b: 125;
|
||||
--bluelib-lime-r: 125;
|
||||
--bluelib-lime-g: 255;
|
||||
--bluelib-lime-b: 125;
|
||||
--bluelib-cyan-r: 125;
|
||||
--bluelib-cyan-g: 255;
|
||||
--bluelib-cyan-b: 255;
|
||||
--bluelib-blue-r: 125;
|
||||
--bluelib-blue-g: 125;
|
||||
--bluelib-blue-b: 255;
|
||||
--bluelib-magenta-r: 255;
|
||||
--bluelib-magenta-g: 125;
|
||||
--bluelib-magenta-b: 255;
|
||||
--bluelib-gray-r: 187;
|
||||
--bluelib-gray-g: 187;
|
||||
--bluelib-gray-b: 187;
|
||||
--bluelib-link-r: 0;
|
||||
--bluelib-link-g: 202;
|
||||
--bluelib-link-b: 202;
|
||||
--bluelib-link-hover-r: 0;
|
||||
--bluelib-link-hover-g: 255;
|
||||
--bluelib-link-hover-b: 255;
|
||||
--bluelib-link-active-r: 160;
|
||||
--bluelib-link-active-g: 255;
|
||||
--bluelib-link-active-b: 255;
|
||||
--bluelib-polarity: 1;
|
||||
--bluelib-title-family: "Fira Sans", sans-serif;
|
||||
--bluelib-title-weight: 500;
|
||||
--bluelib-text-family: "Fira Sans", sans-serif;
|
||||
--bluelib-text-weight: 400;
|
||||
--bluelib-code-family: "Fira Code", sans-serif;
|
||||
--bluelib-code-weight: 400;
|
||||
}
|
||||
/*# sourceMappingURL=royalblue.module.css.map */
|
File diff suppressed because one or more lines are too long
|
@ -3,7 +3,6 @@
|
|||
@import (css) "../normalize/normalize.css";
|
||||
|
||||
@import (less) "../fonts/firasans.less";
|
||||
@import (less) "../palettes/royalblue.less";
|
||||
|
||||
@import (less) "../vars/module.less";
|
||||
@import (less) "../rules/skeleton.less";
|
||||
@import (less) "../rules/royalblue.less";
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
|
@ -3,7 +3,6 @@
|
|||
@import (css) "../normalize/normalize.css";
|
||||
|
||||
@import (less) "../fonts/firasans.less";
|
||||
@import (less) "../palettes/royalblue.less";
|
||||
|
||||
@import (less) "../vars/root.less";
|
||||
@import (less) "../rules/skeleton.less";
|
||||
@import (less) "../rules/royalblue.less";
|
||||
|
|
562
src/targets/skeleton.module.css
Normal file
562
src/targets/skeleton.module.css
Normal file
|
@ -0,0 +1,562 @@
|
|||
@import "../normalize/normalize.css";
|
||||
.bluelib {
|
||||
--bluelib-background-r: 255;
|
||||
--bluelib-background-g: 255;
|
||||
--bluelib-background-b: 255;
|
||||
--bluelib-foreground-r: 24;
|
||||
--bluelib-foreground-g: 24;
|
||||
--bluelib-foreground-b: 24;
|
||||
--bluelib-accent-r: 24;
|
||||
--bluelib-accent-g: 24;
|
||||
--bluelib-accent-b: 24;
|
||||
--bluelib-link-r: 0;
|
||||
--bluelib-link-g: 147;
|
||||
--bluelib-link-b: 147;
|
||||
--bluelib-red-r: 200;
|
||||
--bluelib-red-g: 0;
|
||||
--bluelib-red-b: 0;
|
||||
--bluelib-orange-r: 200;
|
||||
--bluelib-orange-g: 165;
|
||||
--bluelib-orange-b: 0;
|
||||
--bluelib-yellow-r: 200;
|
||||
--bluelib-yellow-g: 200;
|
||||
--bluelib-yellow-b: 0;
|
||||
--bluelib-lime-r: 0;
|
||||
--bluelib-lime-g: 200;
|
||||
--bluelib-lime-b: 0;
|
||||
--bluelib-cyan-r: 0;
|
||||
--bluelib-cyan-g: 200;
|
||||
--bluelib-cyan-b: 200;
|
||||
--bluelib-blue-r: 0;
|
||||
--bluelib-blue-g: 0;
|
||||
--bluelib-blue-b: 200;
|
||||
--bluelib-magenta-r: 200;
|
||||
--bluelib-magenta-g: 0;
|
||||
--bluelib-magenta-b: 200;
|
||||
--bluelib-gray-r: 128;
|
||||
--bluelib-gray-g: 128;
|
||||
--bluelib-gray-b: 128;
|
||||
--bluelib-polarity: -1;
|
||||
--bluelib-title-family: sans-serif;
|
||||
--bluelib-title-weight: bold;
|
||||
--bluelib-text-family: sans-serif;
|
||||
--bluelib-text-weight: normal;
|
||||
--bluelib-code-family: monospace;
|
||||
--bluelib-code-weight: normal;
|
||||
background-color: rgb(var(--bluelib-background-r), var(--bluelib-background-g), var(--bluelib-background-b));
|
||||
--bluelib-color-r: var(--bluelib-foreground-r);
|
||||
--bluelib-color-g: var(--bluelib-foreground-g);
|
||||
--bluelib-color-b: var(--bluelib-foreground-b);
|
||||
font-family: var(--bluelib-text-family);
|
||||
font-weight: var(--bluelib-text-weight);
|
||||
}
|
||||
.bluelib,
|
||||
.bluelib *,
|
||||
.bluelib .all {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
}
|
||||
.bluelib,
|
||||
.bluelib *,
|
||||
.bluelib .all,
|
||||
.bluelib::before,
|
||||
.bluelib *::before,
|
||||
.bluelib .all::before,
|
||||
.bluelib::after,
|
||||
.bluelib *::after,
|
||||
.bluelib .all::after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.bluelib .layout {
|
||||
display: grid;
|
||||
justify-content: stretch;
|
||||
align-items: stretch;
|
||||
width: 100%;
|
||||
}
|
||||
.bluelib .layout-fill {
|
||||
padding: 4px;
|
||||
grid-template-areas: "single";
|
||||
grid-template-columns: 1fr;
|
||||
grid-template-rows: 1fr;
|
||||
}
|
||||
.bluelib .layout-fill-single {
|
||||
grid-area: single;
|
||||
}
|
||||
.bluelib .layout-threecol {
|
||||
padding: 4px;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol {
|
||||
grid-template-areas: "left center right";
|
||||
grid-template-columns: 1fr auto 1fr;
|
||||
grid-template-rows: 1fr;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol {
|
||||
grid-template-areas: "center center" "left right";
|
||||
grid-template-columns: 1fr 1fr;
|
||||
grid-template-rows: auto auto;
|
||||
max-width: 1024px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
}
|
||||
.bluelib .layout-threecol-left {
|
||||
grid-area: left;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol-left {
|
||||
justify-self: end;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol-left {
|
||||
justify-self: stretch;
|
||||
}
|
||||
}
|
||||
.bluelib .layout-threecol-center {
|
||||
grid-area: center;
|
||||
max-width: 1024px;
|
||||
}
|
||||
.bluelib .layout-threecol-right {
|
||||
grid-area: right;
|
||||
}
|
||||
@media screen and (min-width: 1281px) {
|
||||
.bluelib .layout-threecol-right {
|
||||
justify-self: start;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1280px) {
|
||||
.bluelib .layout-threecol-right {
|
||||
justify-self: stretch;
|
||||
}
|
||||
}
|
||||
.bluelib .panel {
|
||||
margin: 8px 0;
|
||||
padding: 8px;
|
||||
width: 100%;
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .panel > *:first-child,
|
||||
.bluelib .panel .all:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
.bluelib .panel > *:last-child,
|
||||
.bluelib .panel .all:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.bluelib .panel-box {
|
||||
border-radius: 4px;
|
||||
border-width: 2px;
|
||||
border-style: solid;
|
||||
}
|
||||
.bluelib .panel-blockquote {
|
||||
border-radius: 4px;
|
||||
border-width: 0 0 0 2px;
|
||||
border-style: solid;
|
||||
}
|
||||
.bluelib .panel-aside {
|
||||
border-width: 0;
|
||||
font-size: smaller;
|
||||
}
|
||||
.bluelib .split {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 4px 8px;
|
||||
justify-content: center;
|
||||
}
|
||||
.bluelib .split > .panel {
|
||||
margin: 0;
|
||||
}
|
||||
.bluelib .split > *,
|
||||
.bluelib .split .all {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 0;
|
||||
flex-basis: 0;
|
||||
}
|
||||
.bluelib .split-forcewrap {
|
||||
flex-grow: 0;
|
||||
flex-shrink: 0;
|
||||
flex-basis: 100%;
|
||||
}
|
||||
.bluelib .separator {
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.5);
|
||||
}
|
||||
.bluelib .separator-light {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .separator-heavy {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
}
|
||||
.bluelib img,
|
||||
.bluelib .image {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
object-fit: contain;
|
||||
}
|
||||
.bluelib .image-limit-half {
|
||||
max-height: max(28.2vw, 50vh);
|
||||
}
|
||||
.bluelib .image-limit-quarter {
|
||||
max-height: max(14.1vw, 25vh);
|
||||
}
|
||||
.bluelib .status-disabled {
|
||||
opacity: 50%;
|
||||
}
|
||||
.bluelib .status-disabled,
|
||||
.bluelib .status-disabled *,
|
||||
.bluelib .status-disabled .all {
|
||||
cursor: not-allowed !important;
|
||||
}
|
||||
.bluelib .input {
|
||||
font: inherit;
|
||||
border-style: solid;
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input.status-disabled {
|
||||
border-style: dashed;
|
||||
}
|
||||
.bluelib .input::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.4);
|
||||
opacity: 1;
|
||||
}
|
||||
.bluelib .input:hover {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.6);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 20)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.1);
|
||||
}
|
||||
.bluelib .input:hover::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.7);
|
||||
}
|
||||
.bluelib .input:focus {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.2);
|
||||
}
|
||||
.bluelib .input:focus::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.7);
|
||||
}
|
||||
.bluelib .input.status-disabled:hover,
|
||||
.bluelib .input.status-disabled:focus {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input.status-disabled:hover::placeholder,
|
||||
.bluelib .input.status-disabled:focus::placeholder {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.4);
|
||||
}
|
||||
.bluelib .input:optional,
|
||||
.bluelib .input:optional::placeholder {
|
||||
font-style: italic;
|
||||
}
|
||||
.bluelib .input:focus-visible {
|
||||
outline: none;
|
||||
}
|
||||
.bluelib .input-field {
|
||||
cursor: text;
|
||||
border-width: 0 0 2px 0;
|
||||
border-radius: 4px 4px 0 0;
|
||||
padding: 6px;
|
||||
}
|
||||
.bluelib .input-select {
|
||||
cursor: context-menu;
|
||||
border-width: 0 0 2px 0;
|
||||
border-radius: 4px 4px 0 0;
|
||||
}
|
||||
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
||||
.bluelib .input-select .input-option,
|
||||
.bluelib .input-select .input-optgroup {
|
||||
background-color: rgb(var(--bluelib-background-r), var(--bluelib-background-g), var(--bluelib-background-b));
|
||||
}
|
||||
}
|
||||
.bluelib .input-multiselect {
|
||||
cursor: vertical-text;
|
||||
border-width: 0 0 0 2px;
|
||||
border-radius: 0 4px 4px 0;
|
||||
}
|
||||
.bluelib .input-select,
|
||||
.bluelib .input-multiselect {
|
||||
padding: 6px 4px;
|
||||
}
|
||||
.bluelib .input-select .input-option,
|
||||
.bluelib .input-multiselect .input-option {
|
||||
font-weight: normal;
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
padding: 4px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup,
|
||||
.bluelib .input-multiselect .input-optgroup {
|
||||
font-weight: bold;
|
||||
color: rgb(var(--bluelib-accent-r), var(--bluelib-accent-g), var(--bluelib-accent-b));
|
||||
padding: 4px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup .input-option,
|
||||
.bluelib .input-multiselect .input-optgroup .input-option {
|
||||
padding: 4px 20px;
|
||||
}
|
||||
.bluelib .input-select .input-optgroup .input-option::before,
|
||||
.bluelib .input-multiselect .input-optgroup .input-option::before {
|
||||
content: "";
|
||||
}
|
||||
.bluelib .input-button {
|
||||
cursor: pointer;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
padding: 6px 16px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .input-button:active {
|
||||
border-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 20)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 20)), 1);
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
}
|
||||
.bluelib .input-button .status-disabled:active {
|
||||
border-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.3);
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
}
|
||||
.bluelib .input-checkbox,
|
||||
.bluelib .input-radio {
|
||||
appearance: none;
|
||||
cursor: pointer;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
border-width: 2px;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.bluelib .input-checkbox::before,
|
||||
.bluelib .input-radio::before {
|
||||
display: block;
|
||||
content: "";
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
||||
.bluelib .input-checkbox:checked::before,
|
||||
.bluelib .input-radio:checked::before {
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.9);
|
||||
}
|
||||
.bluelib .input-checkbox:hover:checked::before,
|
||||
.bluelib .input-radio:hover:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 10)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 10)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 10)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox:focus:checked::before,
|
||||
.bluelib .input-radio:focus:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 30)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox:active:checked::before,
|
||||
.bluelib .input-radio:active:checked::before {
|
||||
background-color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 30)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 30)), 1);
|
||||
}
|
||||
.bluelib .input-checkbox {
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .input-checkbox::before {
|
||||
border-radius: 2px;
|
||||
}
|
||||
.bluelib .input-radio {
|
||||
border-radius: 100%;
|
||||
}
|
||||
.bluelib .input-radio::before {
|
||||
border-radius: 100%;
|
||||
}
|
||||
.bluelib .form {
|
||||
display: grid;
|
||||
align-items: center;
|
||||
row-gap: 4px;
|
||||
column-gap: 8px;
|
||||
grid-template-columns: minmax(auto, 1fr) 5fr;
|
||||
}
|
||||
.bluelib .form .form-label {
|
||||
grid-column: 1;
|
||||
justify-self: end;
|
||||
text-align: right;
|
||||
--bluelib-color-r: var(--bluelib-accent-r);
|
||||
--bluelib-color-g: var(--bluelib-accent-g);
|
||||
--bluelib-color-b: var(--bluelib-accent-b);
|
||||
font-weight: 500;
|
||||
}
|
||||
.bluelib .form .form-input {
|
||||
grid-column: 2;
|
||||
justify-self: stretch;
|
||||
width: 100%;
|
||||
}
|
||||
.bluelib .form .form-group {
|
||||
grid-column: 2;
|
||||
display: flex;
|
||||
gap: 8px 16px;
|
||||
justify-content: space-evenly;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
width: 100%;
|
||||
background-color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 0.025);
|
||||
padding: 6px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .form .form-group .form-group-label {
|
||||
display: flex;
|
||||
gap: 6px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: left;
|
||||
}
|
||||
.bluelib .form .form-group .form-group-row {
|
||||
flex-basis: 100%;
|
||||
justify-content: start;
|
||||
}
|
||||
.bluelib .form .form-row {
|
||||
grid-column-start: 1;
|
||||
grid-column-end: 3;
|
||||
display: flex;
|
||||
gap: 8px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
margin-top: 8px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
.bluelib .element-title {
|
||||
text-align: center;
|
||||
--bluelib-color-r: var(--bluelib-accent-r);
|
||||
--bluelib-color-g: var(--bluelib-accent-g);
|
||||
--bluelib-color-b: var(--bluelib-accent-b);
|
||||
font-family: var(--bluelib-title-family);
|
||||
font-weight: var(--bluelib-title-weight);
|
||||
}
|
||||
.bluelib .element-list-item {
|
||||
margin: 10px 0;
|
||||
}
|
||||
.bluelib .element-anchor {
|
||||
--bluelib-color-r: var(--bluelib-link-r);
|
||||
--bluelib-color-g: var(--bluelib-link-g);
|
||||
--bluelib-color-b: var(--bluelib-link-b);
|
||||
text-decoration-line: underline;
|
||||
text-decoration-style: solid;
|
||||
text-decoration-color: currentColor;
|
||||
text-decoration-thickness: 1px;
|
||||
}
|
||||
.bluelib .element-anchor:hover,
|
||||
.bluelib .element-anchor:focus {
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 50)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 50)), 1);
|
||||
}
|
||||
.bluelib .element-anchor:focus-visible {
|
||||
text-decoration-thickness: 2px;
|
||||
}
|
||||
.bluelib .element-anchor:active {
|
||||
color: rgba(calc(var(--bluelib-color-r) + (var(--bluelib-polarity) * 110)), calc(var(--bluelib-color-g) + (var(--bluelib-polarity) * 110)), calc(var(--bluelib-color-b) + (var(--bluelib-polarity) * 110)), 1);
|
||||
}
|
||||
.bluelib .element-anchor.status-disabled {
|
||||
text-decoration-style: dashed;
|
||||
}
|
||||
.bluelib .element-anchor.status-disabled:hover,
|
||||
.bluelib .element-anchor.status-disabled:focus,
|
||||
.bluelib .element-anchor.status-disabled:active {
|
||||
color: rgba(var(--bluelib-color-r), var(--bluelib-color-g), var(--bluelib-color-b), 1);
|
||||
}
|
||||
.bluelib .align-left {
|
||||
text-align: left;
|
||||
}
|
||||
.bluelib .align-center {
|
||||
text-align: center;
|
||||
}
|
||||
.bluelib .align-right {
|
||||
text-align: right;
|
||||
}
|
||||
.bluelib .size-xxl {
|
||||
font-size: xx-large;
|
||||
}
|
||||
.bluelib .size-xl {
|
||||
font-size: x-large;
|
||||
}
|
||||
.bluelib .size-l {
|
||||
font-size: large;
|
||||
}
|
||||
.bluelib .size-m {
|
||||
font-size: medium;
|
||||
}
|
||||
.bluelib .size-s {
|
||||
font-size: small;
|
||||
}
|
||||
.bluelib .size-xs {
|
||||
font-size: x-small;
|
||||
}
|
||||
.bluelib .size-xxs {
|
||||
font-size: xx-small;
|
||||
}
|
||||
.bluelib .style-bold {
|
||||
font-weight: bold;
|
||||
--bluelib-color-r: var(--bluelib-accent-r);
|
||||
--bluelib-color-g: var(--bluelib-accent-g);
|
||||
--bluelib-color-b: var(--bluelib-accent-b);
|
||||
}
|
||||
.bluelib .style-italic {
|
||||
font-style: italic;
|
||||
}
|
||||
.bluelib .style-underline {
|
||||
text-decoration-line: underline;
|
||||
}
|
||||
.bluelib .style-strike {
|
||||
text-decoration-line: line-through;
|
||||
}
|
||||
.bluelib .style-monospace {
|
||||
font-family: var(--bluelib-code-family);
|
||||
font-weight: var(--bluelib-code-weight);
|
||||
}
|
||||
.bluelib .style-keyboard {
|
||||
font-family: var(--bluelib-code-family);
|
||||
font-weight: var(--bluelib-code-weight);
|
||||
padding: 2px 4px;
|
||||
border: 2px outset;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.bluelib .color-red {
|
||||
--bluelib-color-r: var(--bluelib-red-r);
|
||||
--bluelib-color-g: var(--bluelib-red-g);
|
||||
--bluelib-color-b: var(--bluelib-red-b);
|
||||
}
|
||||
.bluelib .color-orange {
|
||||
--bluelib-color-r: var(--bluelib-orange-r);
|
||||
--bluelib-color-g: var(--bluelib-orange-g);
|
||||
--bluelib-color-b: var(--bluelib-orange-b);
|
||||
}
|
||||
.bluelib .color-yellow {
|
||||
--bluelib-color-r: var(--bluelib-yellow-r);
|
||||
--bluelib-color-g: var(--bluelib-yellow-g);
|
||||
--bluelib-color-b: var(--bluelib-yellow-b);
|
||||
}
|
||||
.bluelib .color-lime {
|
||||
--bluelib-color-r: var(--bluelib-lime-r);
|
||||
--bluelib-color-g: var(--bluelib-lime-g);
|
||||
--bluelib-color-b: var(--bluelib-lime-b);
|
||||
}
|
||||
.bluelib .color-cyan {
|
||||
--bluelib-color-r: var(--bluelib-cyan-r);
|
||||
--bluelib-color-g: var(--bluelib-cyan-g);
|
||||
--bluelib-color-b: var(--bluelib-cyan-b);
|
||||
}
|
||||
.bluelib .color-blue {
|
||||
--bluelib-color-r: var(--bluelib-blue-r);
|
||||
--bluelib-color-g: var(--bluelib-blue-g);
|
||||
--bluelib-color-b: var(--bluelib-blue-b);
|
||||
}
|
||||
.bluelib .color-magenta {
|
||||
--bluelib-color-r: var(--bluelib-magenta-r);
|
||||
--bluelib-color-g: var(--bluelib-magenta-g);
|
||||
--bluelib-color-b: var(--bluelib-magenta-b);
|
||||
}
|
||||
.bluelib .color-gray {
|
||||
--bluelib-color-r: var(--bluelib-gray-r);
|
||||
--bluelib-color-g: var(--bluelib-gray-g);
|
||||
--bluelib-color-b: var(--bluelib-gray-b);
|
||||
}
|
||||
/*# sourceMappingURL=skeleton.module.css.map */
|
1
src/targets/skeleton.module.css.map
Normal file
1
src/targets/skeleton.module.css.map
Normal file
File diff suppressed because one or more lines are too long
5
src/targets/skeleton.module.less
Normal file
5
src/targets/skeleton.module.less
Normal file
|
@ -0,0 +1,5 @@
|
|||
@import (css) "../normalize/normalize.css";
|
||||
|
||||
@import (less) "../utils/mixins.less";
|
||||
@import (less) "../vars/module.less";
|
||||
@import (less) "../rules/skeleton.less";
|
2228
src/targets/skeleton.root.css
Normal file
2228
src/targets/skeleton.root.css
Normal file
File diff suppressed because it is too large
Load diff
1
src/targets/skeleton.root.css.map
Normal file
1
src/targets/skeleton.root.css.map
Normal file
File diff suppressed because one or more lines are too long
5
src/targets/skeleton.root.less
Normal file
5
src/targets/skeleton.root.less
Normal file
|
@ -0,0 +1,5 @@
|
|||
@import (css) "../normalize/normalize.css";
|
||||
|
||||
@import (less) "../utils/mixins.less";
|
||||
@import (less) "../vars/root.less";
|
||||
@import (less) "../rules/skeleton.less";
|
|
@ -1,9 +1,43 @@
|
|||
.bluelib-color(@color) {
|
||||
--bluelib-color-r: red(@color);
|
||||
--bluelib-color-g: green(@color);
|
||||
--bluelib-color-b: blue(@color);
|
||||
.set-var-rgb(@property; @r; @g; @b) {
|
||||
--@{property}-r: @r;
|
||||
--@{property}-g: @g;
|
||||
--@{property}-b: @b;
|
||||
}
|
||||
|
||||
.define-bluelib-color-macros() {
|
||||
.map-var-rgb(@property; @source) {
|
||||
--@{property}-r: var( ~"--@{source}-r" );
|
||||
--@{property}-g: var( ~"--@{source}-g" );
|
||||
--@{property}-b: var( ~"--@{source}-b" );
|
||||
}
|
||||
|
||||
}
|
||||
.use-var-rgb(@property; @source) {
|
||||
@{property}: rgb(
|
||||
var(~"--@{source}-r"),
|
||||
var(~"--@{source}-g"),
|
||||
var(~"--@{source}-b")
|
||||
);
|
||||
}
|
||||
|
||||
.use-var-rgb-with-alpha(@property; @source; @alpha) {
|
||||
@{property}: rgba(
|
||||
var(~"--@{source}-r"),
|
||||
var(~"--@{source}-g"),
|
||||
var(~"--@{source}-b"),
|
||||
@alpha
|
||||
);
|
||||
}
|
||||
|
||||
.set-var-font(@property; @family; @weight) {
|
||||
--@{property}-family: @family;
|
||||
--@{property}-weight: @weight;
|
||||
}
|
||||
|
||||
.map-var-font(@property; @source) {
|
||||
--@{property}-family: var( ~"--@{source}-family");
|
||||
--@{property}-weight: var( ~"--@{source}-weight");
|
||||
}
|
||||
|
||||
.use-var-font(@source) {
|
||||
font-family: var( ~"--@{source}-family");
|
||||
font-weight: var( ~"--@{source}-weight");
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue