65 lines
1.4 KiB
CSS
65 lines
1.4 KiB
CSS
:host {
|
|
display: flex;
|
|
flex-direction: column;
|
|
--vertical-displacement: 12.5px;
|
|
}
|
|
|
|
.rc-border {
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
align-items: center;
|
|
flex-grow: 1;
|
|
|
|
padding: var(--padding, 4px);
|
|
border-width: 2px;
|
|
border-style: solid;
|
|
border-color: var(--border-color);
|
|
border-radius: 8px;
|
|
position: relative;
|
|
margin-top: var(--margin-top, var(--vertical-displacement));
|
|
padding-top: var(--padding-top, calc(var(--vertical-displacement) + 4px));
|
|
|
|
&::before {
|
|
display: block;
|
|
content: "";
|
|
position: absolute;
|
|
top: -3px;
|
|
height: 5px;
|
|
left: 50%;
|
|
right: -3px;
|
|
background: var(--border-mask, var(--base-background));
|
|
}
|
|
&::after {
|
|
display: block;
|
|
content: "";
|
|
position: absolute;
|
|
width: 6px;
|
|
top: -3px;
|
|
right: -3px;
|
|
height: 30px;
|
|
background: rgb(0,0,0);
|
|
background: linear-gradient(
|
|
180deg,
|
|
var(--border-mask, var(--base-background)) 0%,
|
|
var(--border-mask, var(--base-background)) 50%,
|
|
rgba(0,255,255,0) 100%
|
|
);
|
|
}
|
|
|
|
.title {
|
|
position: absolute;
|
|
top: calc(-1 * var(--vertical-displacement));
|
|
left: 50%;
|
|
height: minmax(var(--title-height, 20px), auto);
|
|
transform: translateX(-50%);
|
|
background: var(--title-background, var(--border-color));
|
|
padding: 4px 6px;
|
|
box-sizing: border-box;
|
|
width: max-content;
|
|
max-width: 75%;
|
|
min-width: 50px;
|
|
border-radius: 4px;
|
|
text-align: center;
|
|
}
|
|
}
|