shoelace/src/components/alert/alert.scss

121 wiersze
2.2 KiB
SCSS

@import 'component';
:host {
display: block;
border-radius: var(--sl-border-radius-medium);
&[hidden] {
display: none;
}
}
.alert {
position: relative;
display: flex;
align-items: stretch;
background-color: var(--sl-color-white);
border: solid 1px var(--sl-color-gray-90);
border-top-width: 3px;
border-radius: var(--sl-border-radius-medium);
font-family: var(--sl-font-sans);
font-size: var(--sl-font-size-small);
font-weight: var(--sl-font-weight-normal);
line-height: 1.6;
color: var(--sl-color-gray-30);
opacity: 0;
transition: var(--sl-transition-medium) opacity ease;
}
.alert--open {
opacity: 1;
}
.alert__icon {
flex: 0 0 auto;
display: flex;
align-items: center;
font-size: var(--sl-font-size-large);
::slotted(*) {
margin-left: var(--sl-spacing-large);
}
}
.alert--primary {
border-top-color: var(--sl-color-primary-50);
.alert__icon {
color: var(--sl-color-primary-50);
}
}
.alert--success {
border-top-color: var(--sl-color-success-50);
.alert__icon {
color: var(--sl-color-success-50);
}
}
.alert--info {
border-top-color: var(--sl-color-info-50);
.alert__icon {
color: var(--sl-color-info-50);
}
}
.alert--warning {
border-top-color: var(--sl-color-warning-50);
.alert__icon {
color: var(--sl-color-warning-50);
}
}
.alert--danger {
border-top-color: var(--sl-color-danger-50);
.alert__icon {
color: var(--sl-color-danger-50);
}
}
.alert__message {
flex: 1 1 auto;
padding: var(--sl-spacing-large);
overflow: hidden;
}
.alert__close {
flex: 0 0 auto;
display: flex;
align-items: center;
background: none;
border: none;
border-radius: var(--sl-border-radius-small);
font-family: inherit;
font-size: var(--sl-font-size-large);
font-weight: inherit;
color: var(--sl-color-gray-50);
padding: 0 var(--sl-spacing-large);
cursor: pointer;
transition: var(--sl-transition-fast) color;
-webkit-appearance: none;
&:hover,
&:focus,
&:active {
color: var(--sl-color-primary-50);
}
&:focus {
outline: none;
}
}
.focus-visible .alert__close:focus {
box-shadow: 0 0 0 var(--sl-focus-ring-width)
hsla(var(--sl-color-primary-hue), var(--sl-color-primary-saturation), 50%, var(--sl-focus-ring-alpha));
}