@inkline/inkline
Version:
Inkline is the intuitive UI Components library that gives you a developer-friendly foundation for building high-quality, accessible, and customizable Vue.js 3 Design Systems.
471 lines (469 loc) • 21.2 kB
CSS
/**
* Breakpoint mixins
*/
/**
* Popover
*/
.popover-wrapper {
display: inline-block;
position: relative;
}
.popover-wrapper .popover {
position: absolute;
z-index: var(--popover--z-index, 2000);
word-wrap: break-word;
width: max-content;
top: 0;
left: 0;
text-align: left;
list-style: none;
line-height: var(--popover--line-height, var(--line-height));
box-shadow: var(--popover--box-shadow, var(--popover--box-shadow-x-offset, var(--box-shadow-offset-x)) var(--popover--box-shadow-y-offset, var(--box-shadow-offset-y)) var(--popover--box-shadow-blur-radius, var(--box-shadow-blur-radius)) var(--popover--box-shadow-spread-radius, var(--box-shadow-spread-radius)) var(--popover--box-shadow-color, var(--box-shadow-color)));
background-clip: padding-box;
display: inline-block;
white-space: normal;
width: var(--popover--width, 280px);
max-width: var(--popover--max-width, 90vw);
color: var(--popover--color);
font-size: var(--popover--font-size, var(--font-size));
}
.popover-wrapper .popover:focus:hover {
outline-width: 0;
}
.popover-wrapper .popover[data-popup-placement^=top] {
transform-origin: center bottom;
}
.popover-wrapper .popover[data-popup-placement^=bottom] {
transform-origin: center top;
}
.popover-wrapper .popover[data-popup-placement^=right] {
transform-origin: left center;
}
.popover-wrapper .popover[data-popup-placement^=left] {
transform-origin: right center;
}
.popover-wrapper .popover > .arrow {
position: absolute;
}
.popover-wrapper .popover > .arrow,
.popover-wrapper .popover > .arrow::after {
display: block;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
position: absolute;
}
.popover-wrapper .popover > .arrow::after {
content: "";
}
.popover-wrapper .popover[data-popup-placement^=top] > .arrow {
border-bottom-width: 0;
}
.popover-wrapper .popover[data-popup-placement^=top] > .arrow::after {
border-bottom-width: 0;
}
.popover-wrapper .popover[data-popup-placement^=bottom] > .arrow {
border-top-width: 0;
}
.popover-wrapper .popover[data-popup-placement^=bottom] > .arrow::after {
border-top-width: 0;
}
.popover-wrapper .popover[data-popup-placement^=right] > .arrow {
border-left-width: 0;
}
.popover-wrapper .popover[data-popup-placement^=right] > .arrow::after {
border-left-width: 0;
}
.popover-wrapper .popover[data-popup-placement^=left] > .arrow {
border-right-width: 0;
}
.popover-wrapper .popover[data-popup-placement^=left] > .arrow::after {
border-right-width: 0;
}
.popover-wrapper .popover > .arrow {
width: var(--popover--arrow--size, 6px);
height: var(--popover--arrow--size, 6px);
}
.popover-wrapper .popover > .arrow, .popover-wrapper .popover > .arrow::after {
border-width: var(--popover--arrow--size, 6px);
}
.popover-wrapper .popover[data-popup-placement^=top] > .arrow::after, .popover-wrapper .popover[data-popup-placement^=bottom] > .arrow::after {
margin-left: calc(var(--popover--arrow--size, 6px) * -1);
}
.popover-wrapper .popover[data-popup-placement^=left] > .arrow::after, .popover-wrapper .popover[data-popup-placement^=right] > .arrow::after {
margin-top: calc(var(--popover--arrow--size, 6px) * -1);
}
.popover-wrapper .popover[data-popup-placement^=top] > .arrow {
bottom: calc(var(--popover--arrow--size, 6px) * -1);
}
.popover-wrapper .popover[data-popup-placement^=top] > .arrow::after {
bottom: 1px;
}
.popover-wrapper .popover[data-popup-placement^=bottom] > .arrow {
top: calc(var(--popover--arrow--size, 6px) * -1);
}
.popover-wrapper .popover[data-popup-placement^=bottom] > .arrow::after {
top: 1px;
}
.popover-wrapper .popover[data-popup-placement^=left] > .arrow {
right: calc(var(--popover--arrow--size, 6px) * -1);
}
.popover-wrapper .popover[data-popup-placement^=left] > .arrow::after {
right: 1px;
}
.popover-wrapper .popover[data-popup-placement^=right] > .arrow {
left: calc(var(--popover--arrow--size, 6px) * -1);
}
.popover-wrapper .popover[data-popup-placement^=right] > .arrow::after {
left: 1px;
}
.popover-wrapper .popover > .popover-header {
border-style: var(--popover--header--border-style, var(--popover--header--border-top-style, var(--popover--border-top-style, var(--border-top-style))) var(--popover--header--border-right-style, var(--popover--border-right-style, var(--border-right-style))) var(--popover--header--border-bottom-style, var(--popover--border-bottom-style, var(--border-bottom-style))) var(--popover--header--border-left-style, var(--popover--border-left-style, var(--border-left-style))));
border-width: var(--popover--header--border-width, var(--popover--header--border-top-width, var(--popover--border-top-width, var(--border-top-width))) var(--popover--header--border-right-width, var(--popover--border-right-width, var(--border-right-width))) var(--popover--header--border-bottom-width, 0) var(--popover--header--border-left-width, var(--popover--border-left-width, var(--border-left-width))));
border-color: var(--popover--header--border-color, var(--popover--header--border-top-color, var(--popover--border-top-color, var(--border-top-color))) var(--popover--header--border-right-color, var(--popover--border-right-color, var(--border-right-color))) var(--popover--header--border-bottom-color, var(--popover--border-bottom-color, var(--border-bottom-color))) var(--popover--header--border-left-color, var(--popover--border-left-color, var(--border-left-color))));
padding: var(--popover--header--padding, var(--popover--header--padding-top, var(--popover--padding-top, var(--padding-top))) var(--popover--header--padding-right, var(--popover--padding-right, var(--padding-right))) var(--popover--header--padding-bottom, var(--popover--padding-bottom, var(--padding-bottom))) var(--popover--header--padding-left, var(--popover--padding-left, var(--padding-left))));
background-color: var(--popover--header--background, var(--popover--background));
}
.popover-wrapper .popover > .popover-body {
border-style: var(--popover--body--border-style, var(--popover--body--border-top-style, var(--popover--border-top-style, var(--border-top-style))) var(--popover--body--border-right-style, var(--popover--border-right-style, var(--border-right-style))) var(--popover--body--border-bottom-style, var(--popover--border-bottom-style, var(--border-bottom-style))) var(--popover--body--border-left-style, var(--popover--border-left-style, var(--border-left-style))));
border-width: var(--popover--body--border-width, var(--popover--body--border-top-width, var(--popover--border-top-width, var(--border-top-width))) var(--popover--body--border-right-width, var(--popover--border-right-width, var(--border-right-width))) var(--popover--body--border-bottom-width, var(--popover--border-bottom-width, var(--border-bottom-width))) var(--popover--body--border-left-width, var(--popover--border-left-width, var(--border-left-width))));
border-color: var(--popover--body--border-color, var(--popover--body--border-top-color, var(--popover--border-top-color, var(--border-top-color))) var(--popover--body--border-right-color, var(--popover--border-right-color, var(--border-right-color))) var(--popover--body--border-bottom-color, var(--popover--border-bottom-color, var(--border-bottom-color))) var(--popover--body--border-left-color, var(--popover--border-left-color, var(--border-left-color))));
padding: var(--popover--body--padding, var(--popover--body--padding-top, var(--popover--padding-top, var(--padding-top))) var(--popover--body--padding-right, var(--popover--padding-right, var(--padding-right))) var(--popover--body--padding-bottom, var(--popover--padding-bottom, var(--padding-bottom))) var(--popover--body--padding-left, var(--popover--padding-left, var(--padding-left))));
background-color: var(--popover--body--background, var(--popover--background));
}
.popover-wrapper .popover > .popover-footer {
border-style: var(--popover--footer--border-style, var(--popover--footer--border-top-style, var(--popover--border-top-style, var(--border-top-style))) var(--popover--footer--border-right-style, var(--popover--border-right-style, var(--border-right-style))) var(--popover--footer--border-bottom-style, var(--popover--border-bottom-style, var(--border-bottom-style))) var(--popover--footer--border-left-style, var(--popover--border-left-style, var(--border-left-style))));
border-width: var(--popover--footer--border-width, var(--popover--footer--border-top-width, 0) var(--popover--footer--border-right-width, var(--popover--border-right-width, var(--border-right-width))) var(--popover--footer--border-bottom-width, var(--popover--border-bottom-width, var(--border-bottom-width))) var(--popover--footer--border-left-width, var(--popover--border-left-width, var(--border-left-width))));
border-color: var(--popover--footer--border-color, var(--popover--footer--border-top-color, var(--popover--border-top-color, var(--border-top-color))) var(--popover--footer--border-right-color, var(--popover--border-right-color, var(--border-right-color))) var(--popover--footer--border-bottom-color, var(--popover--border-bottom-color, var(--border-bottom-color))) var(--popover--footer--border-left-color, var(--popover--border-left-color, var(--border-left-color))));
padding: var(--popover--footer--padding, var(--popover--footer--padding-top, var(--popover--padding-top, var(--padding-top))) var(--popover--footer--padding-right, var(--popover--padding-right, var(--padding-right))) var(--popover--footer--padding-bottom, var(--popover--padding-bottom, var(--padding-bottom))) var(--popover--footer--padding-left, var(--popover--padding-left, var(--padding-left))));
background-color: var(--popover--footer--background, var(--popover--background));
}
.popover-wrapper .popover > div:first-of-type {
border-top-left-radius: var(--popover--border-top-left-radius, var(--border-top-left-radius));
border-top-right-radius: var(--popover--border-top-right-radius, var(--border-top-right-radius));
}
.popover-wrapper .popover > div:last-of-type {
border-bottom-left-radius: var(--popover--border-bottom-left-radius, var(--border-bottom-left-radius));
border-bottom-right-radius: var(--popover--border-bottom-right-radius, var(--border-bottom-right-radius));
}
.popover-wrapper .popover[data-popup-placement^=top] > .arrow {
border-top-color: var(--popover--border-bottom-color, var(--border-bottom-color));
}
.popover-wrapper .popover[data-popup-placement^=top] > .arrow::after {
border-top-color: var(--popover--background);
}
.popover-wrapper .popover[data-popup-placement^=right] > .arrow {
border-right-color: var(--popover--border-left-color, var(--border-left-color));
}
.popover-wrapper .popover[data-popup-placement^=right] > .arrow::after {
border-right-color: var(--popover--background);
}
.popover-wrapper .popover[data-popup-placement^=bottom] > .arrow {
border-bottom-color: var(--popover--border-top-color, var(--border-top-color));
}
.popover-wrapper .popover[data-popup-placement^=bottom] > .arrow::after {
border-bottom-color: var(--popover--background);
}
.popover-wrapper .popover[data-popup-placement^=left] > .arrow {
border-left-color: var(--popover--border-right-color, var(--border-right-color));
}
.popover-wrapper .popover[data-popup-placement^=left] > .arrow::after {
border-left-color: var(--popover--background);
}
/**
* Color variants
*/
.popover-wrapper.-light {
--popover--background: var(--popover--light--background, var(--color-white));
--popover--border-top-color: var(
--popover--light--border-top-color,
var(--color-light-shade-50)
);
--popover--border-right-color: var(
--popover--light--border-right-color,
var(--color-light-shade-50)
);
--popover--border-bottom-color: var(
--popover--light--border-bottom-color,
var(--color-light-shade-50)
);
--popover--border-left-color: var(
--popover--light--border-left-color,
var(--color-light-shade-50)
);
--popover--color: var(--popover--light--color, var(--contrast-text-color-white));
--popover--header--background: var(
--popover--light--header--background,
var(--color-gray-50)
);
--popover--footer--background: var(
--popover--light--footer--background,
var(--color-gray-50)
);
}
.popover-wrapper.-dark {
--popover--background: var(--popover--dark--background, var(--color-dark));
--popover--border-top-color: var(
--popover--dark--border-top-color,
var(--color-dark-tint-50)
);
--popover--border-right-color: var(
--popover--dark--border-right-color,
var(--color-dark-tint-50)
);
--popover--border-bottom-color: var(
--popover--dark--border-bottom-color,
var(--color-dark-tint-50)
);
--popover--border-left-color: var(
--popover--dark--border-left-color,
var(--color-dark-tint-50)
);
--popover--color: var(--popover--dark--color, var(--contrast-text-color-dark));
--popover--header--background: var(
--popover--dark--header--background,
var(--color-dark-tint-50)
);
--popover--footer--background: var(
--popover--dark--footer--background,
var(--color-dark-tint-50)
);
}
/**
* Size variants
*/
.popover-wrapper.-sm {
--popover--border-top-left-radius: var(
--popover--sm--border-top-left-radius,
calc(var(--border-top-left-radius) * var(--size-multiplier-sm))
);
--popover--border-top-right-radius: var(
--popover--sm--border-top-right-radius,
calc(var(--border-top-right-radius) * var(--size-multiplier-sm))
);
--popover--border-bottom-right-radius: var(
--popover--sm--border-bottom-right-radius,
calc(var(--border-bottom-right-radius) * var(--size-multiplier-sm))
);
--popover--border-bottom-left-radius: var(
--popover--sm--border-bottom-left-radius,
calc(var(--border-bottom-left-radius) * var(--size-multiplier-sm))
);
--popover--font-size: var(
--popover--sm--font-size,
calc(var(--font-size) * var(--size-multiplier-sm))
);
--popover--margin-top: var(
--popover--sm--margin-top,
calc(calc(var(--margin-top) / 2) * var(--size-multiplier-sm))
);
--popover--margin-right: var(
--popover--sm--margin-right,
calc(calc(var(--margin-right) / 2) * var(--size-multiplier-sm))
);
--popover--margin-bottom: var(
--popover--sm--margin-bottom,
calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-sm))
);
--popover--margin-left: var(
--popover--sm--margin-left,
calc(calc(var(--margin-left) / 2) * var(--size-multiplier-sm))
);
--popover--padding-top: var(
--popover--sm--padding-top,
calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-sm))
);
--popover--padding-right: var(
--popover--sm--padding-right,
calc(var(--padding-right) * var(--size-multiplier-sm))
);
--popover--padding-bottom: var(
--popover--sm--padding-bottom,
calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-sm))
);
--popover--padding-left: var(
--popover--sm--padding-left,
calc(var(--padding-left) * var(--size-multiplier-sm))
);
--popover--header--padding-bottom: var(
--popover--sm--header--padding-bottom,
var(----padding-bottom-sm)
);
--popover--header--padding-left: var(
--popover--sm--header--padding-left,
var(----padding-left-sm)
);
--popover--body--padding-bottom: var(
--popover--sm--body--padding-bottom,
var(----padding-bottom-sm)
);
--popover--body--padding-left: var(
--popover--sm--body--padding-left,
var(----padding-left-sm)
);
--popover--footer--padding-bottom: var(
--popover--sm--footer--padding-bottom,
var(----padding-bottom-sm)
);
--popover--footer--padding-left: var(
--popover--sm--footer--padding-left,
var(----padding-left-sm)
);
}
.popover-wrapper.-md {
--popover--border-top-left-radius: var(
--popover--md--border-top-left-radius,
calc(var(--border-top-left-radius) * var(--size-multiplier-md))
);
--popover--border-top-right-radius: var(
--popover--md--border-top-right-radius,
calc(var(--border-top-right-radius) * var(--size-multiplier-md))
);
--popover--border-bottom-right-radius: var(
--popover--md--border-bottom-right-radius,
calc(var(--border-bottom-right-radius) * var(--size-multiplier-md))
);
--popover--border-bottom-left-radius: var(
--popover--md--border-bottom-left-radius,
calc(var(--border-bottom-left-radius) * var(--size-multiplier-md))
);
--popover--font-size: var(
--popover--md--font-size,
calc(var(--font-size) * var(--size-multiplier-md))
);
--popover--margin-top: var(
--popover--md--margin-top,
calc(calc(var(--margin-top) / 2) * var(--size-multiplier-md))
);
--popover--margin-right: var(
--popover--md--margin-right,
calc(calc(var(--margin-right) / 2) * var(--size-multiplier-md))
);
--popover--margin-bottom: var(
--popover--md--margin-bottom,
calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-md))
);
--popover--margin-left: var(
--popover--md--margin-left,
calc(calc(var(--margin-left) / 2) * var(--size-multiplier-md))
);
--popover--padding-top: var(
--popover--md--padding-top,
calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-md))
);
--popover--padding-right: var(
--popover--md--padding-right,
calc(var(--padding-right) * var(--size-multiplier-md))
);
--popover--padding-bottom: var(
--popover--md--padding-bottom,
calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-md))
);
--popover--padding-left: var(
--popover--md--padding-left,
calc(var(--padding-left) * var(--size-multiplier-md))
);
--popover--header--padding-bottom: var(
--popover--md--header--padding-bottom,
var(----padding-bottom-md)
);
--popover--header--padding-left: var(
--popover--md--header--padding-left,
var(----padding-left-md)
);
--popover--body--padding-bottom: var(
--popover--md--body--padding-bottom,
var(----padding-bottom-md)
);
--popover--body--padding-left: var(
--popover--md--body--padding-left,
var(----padding-left-md)
);
--popover--footer--padding-bottom: var(
--popover--md--footer--padding-bottom,
var(----padding-bottom-md)
);
--popover--footer--padding-left: var(
--popover--md--footer--padding-left,
var(----padding-left-md)
);
}
.popover-wrapper.-lg {
--popover--border-top-left-radius: var(
--popover--lg--border-top-left-radius,
calc(var(--border-top-left-radius) * var(--size-multiplier-lg))
);
--popover--border-top-right-radius: var(
--popover--lg--border-top-right-radius,
calc(var(--border-top-right-radius) * var(--size-multiplier-lg))
);
--popover--border-bottom-right-radius: var(
--popover--lg--border-bottom-right-radius,
calc(var(--border-bottom-right-radius) * var(--size-multiplier-lg))
);
--popover--border-bottom-left-radius: var(
--popover--lg--border-bottom-left-radius,
calc(var(--border-bottom-left-radius) * var(--size-multiplier-lg))
);
--popover--font-size: var(
--popover--lg--font-size,
calc(var(--font-size) * var(--size-multiplier-lg))
);
--popover--margin-top: var(
--popover--lg--margin-top,
calc(calc(var(--margin-top) / 2) * var(--size-multiplier-lg))
);
--popover--margin-right: var(
--popover--lg--margin-right,
calc(calc(var(--margin-right) / 2) * var(--size-multiplier-lg))
);
--popover--margin-bottom: var(
--popover--lg--margin-bottom,
calc(calc(var(--margin-bottom) / 2) * var(--size-multiplier-lg))
);
--popover--margin-left: var(
--popover--lg--margin-left,
calc(calc(var(--margin-left) / 2) * var(--size-multiplier-lg))
);
--popover--padding-top: var(
--popover--lg--padding-top,
calc(calc(var(--padding-top) * 3 / 4) * var(--size-multiplier-lg))
);
--popover--padding-right: var(
--popover--lg--padding-right,
calc(var(--padding-right) * var(--size-multiplier-lg))
);
--popover--padding-bottom: var(
--popover--lg--padding-bottom,
calc(calc(var(--padding-bottom) * 3 / 4) * var(--size-multiplier-lg))
);
--popover--padding-left: var(
--popover--lg--padding-left,
calc(var(--padding-left) * var(--size-multiplier-lg))
);
--popover--header--padding-bottom: var(
--popover--lg--header--padding-bottom,
var(----padding-bottom-lg)
);
--popover--header--padding-left: var(
--popover--lg--header--padding-left,
var(----padding-left-lg)
);
--popover--body--padding-bottom: var(
--popover--lg--body--padding-bottom,
var(----padding-bottom-lg)
);
--popover--body--padding-left: var(
--popover--lg--body--padding-left,
var(----padding-left-lg)
);
--popover--footer--padding-bottom: var(
--popover--lg--footer--padding-bottom,
var(----padding-bottom-lg)
);
--popover--footer--padding-left: var(
--popover--lg--footer--padding-left,
var(----padding-left-lg)
);
}