rsuite
Version:
A suite of react components
305 lines (290 loc) • 7.7 kB
CSS
*[class*=rs-],*[class*=rs-]::before, *[class*=rs-]::after{
box-sizing:border-box;
}
:root{
--rs-gray-0:#fff;
--rs-gray-50:#f7f7fa;
--rs-gray-100:#f2f2f5;
--rs-gray-300:#d9d9d9;
--rs-gray-400:#b6b7b8;
--rs-gray-500:#939393;
--rs-gray-600:#717273;
--rs-gray-800:#343434;
--rs-primary-500:#3498ff;
--rs-red-500:#F44336;
--rs-orange-500:#FA8900;
--rs-yellow-500:#FFB300;
--rs-green-500:#4CAF50;
--rs-cyan-500:#00BCD4;
--rs-blue-500:#2196F3;
--rs-violet-500:#673AB7;
--rs-text-disabled:var(--rs-gray-600);
--rs-focus-ring-color:rgb(from var(--rs-primary-500) r g b / 25%);
--rs-checkbox-checked-bg:var(--rs-primary-500);
--rs-radio-marker:#fff;
--rs-radio-border:var(--rs-gray-300);
--rs-radio-checked-bg:var(--rs-primary-500);
--rs-radio-disabled-bg:var(--rs-gray-50);
}
@supports not (color: rgb(from white r g b)){
:root{
--rs-focus-ring-color:rgba(52, 152, 255, 0.25);
}
}
[data-theme=dark],
.rs-theme-dark{
--rs-gray-0:#fff;
--rs-gray-50:#e9ebf0;
--rs-gray-100:#cbced4;
--rs-gray-300:#858b94;
--rs-gray-400:#6a6f76;
--rs-gray-500:#5c6066;
--rs-gray-600:#3c3f43;
--rs-gray-800:#1a1d24;
--rs-primary-500:#34c3ff;
--rs-red-500:#F04F43;
--rs-orange-500:#FF9800;
--rs-yellow-500:#FFC757;
--rs-green-500:#58B15B;
--rs-cyan-500:#00BCD4;
--rs-blue-500:#1499EF;
--rs-violet-500:#673AB7;
--rs-text-disabled:var(--rs-gray-400);
--rs-checkbox-checked-bg:var(--rs-primary-500);
--rs-radio-marker:var(--rs-gray-800);
--rs-radio-border:var(--rs-gray-400);
--rs-radio-checked-bg:var(--rs-primary-500);
--rs-radio-disabled-bg:var(--rs-gray-500);
}
[data-theme=high-contrast],
.rs-theme-high-contrast{
--rs-gray-0:#fff;
--rs-gray-50:#e9ebf0;
--rs-gray-100:#cbced4;
--rs-gray-300:#858b94;
--rs-gray-400:#6a6f76;
--rs-gray-500:#5c6066;
--rs-gray-600:#3c3f43;
--rs-gray-800:#1a1d24;
--rs-primary-500:#ffff00;
--rs-red-500:#BD1732;
--rs-orange-500:#FF9800;
--rs-yellow-500:#FFC757;
--rs-green-500:#0D822C;
--rs-cyan-500:#00BCD4;
--rs-blue-500:#1499EF;
--rs-violet-500:#673AB7;
--rs-text-disabled:var(--rs-gray-400);
--rs-focus-ring-color:var(--rs-gray-0);
--rs-checkbox-checked-bg:var(--rs-primary-500);
--rs-radio-marker:var(--rs-gray-800);
--rs-radio-border:var(--rs-gray-100);
--rs-radio-checked-bg:var(--rs-primary-500);
--rs-radio-disabled-bg:var(--rs-gray-500);
}
:root{
--rs-spacing:0.25rem;
--rs-radius-full:62.5rem;
--rs-cursor-disabled:not-allowed;
}
@media (max-width: calc(576px - 1px)){
[data-visible-from=xs]{
display:none ;
}
}
@media (min-width: 576px){
[data-hidden-from=xs]{
display:none ;
}
}
@media (max-width: calc(768px - 1px)){
[data-visible-from=sm]{
display:none ;
}
}
@media (min-width: 768px){
[data-hidden-from=sm]{
display:none ;
}
}
@media (max-width: calc(992px - 1px)){
[data-visible-from=md]{
display:none ;
}
}
@media (min-width: 992px){
[data-hidden-from=md]{
display:none ;
}
}
@media (max-width: calc(1200px - 1px)){
[data-visible-from=lg]{
display:none ;
}
}
@media (min-width: 1200px){
[data-hidden-from=lg]{
display:none ;
}
}
@media (max-width: calc(1400px - 1px)){
[data-visible-from=xl]{
display:none ;
}
}
@media (min-width: 1400px){
[data-hidden-from=xl]{
display:none ;
}
}
:root{
--rs-radio-size:16px;
--rs-radio-inner-size:6px;
--rs-radio-display:inline-flex;
}
.rs-radio{
display:var(--rs-radio-display);
position:relative;
align-items:center;
}
.rs-radio[data-disabled=true] label{
cursor:var(--rs-cursor-disabled);
}
.rs-radio label{
font-weight:normal;
cursor:pointer;
}
.rs-radio-inner::before{
border-color:var(--rs-checkbox-checked-bg);
}
.rs-radio[data-disabled=true] label{
cursor:var(--rs-cursor-disabled);
}
.rs-radio[data-disabled=true] > .rs-radio-checker > label{
color:var(--rs-text-disabled);
}
.rs-radio [type=radio]:focus ~ .rs-radio-inner::before{
outline:2px solid var(--rs-focus-ring-color);
outline-offset:-1px;
}
.rs-radio[data-disabled=true]{
cursor:var(--rs-cursor-disabled);
}
.rs-radio-checker{
position:relative;
display:inline-flex;
}
.rs-radio-checker > label{
display:inline-flex;
align-items:center;
gap:calc(var(--rs-spacing) * 2);
}
.rs-radio-control{
position:relative;
display:inline-flex;
}
.rs-radio-control [type=radio]{
opacity:0;
width:var(--rs-radio-size);
height:var(--rs-radio-size);
}
.rs-radio-control::before,
.rs-radio-control .rs-radio-inner::before,
.rs-radio-control .rs-radio-inner::after{
content:"";
position:absolute;
inset-inline-start:0;
top:0;
display:block;
}
.rs-radio-control::before,
.rs-radio-control .rs-radio-inner::before{
width:var(--rs-radio-size);
height:var(--rs-radio-size);
}
.rs-radio-control::before{
border:1px solid var(--rs-radio-checked-bg);
background-color:transparent;
border-radius:var(--rs-radius-full);
transform:scale(1);
opacity:0.7;
visibility:hidden;
transition:transform 0.2s linear, opacity 0.2s linear;
}
[data-theme=high-contrast] .rs-radio-control::before, .rs-theme-high-contrast .rs-radio-control::before{
transition:none;
}
.rs-radio[data-checked=true] .rs-radio-control::before{
transform:scale(1.5);
opacity:0;
visibility:visible;
}
.rs-radio-inner::before{
border:1px solid var(--rs-radio-border);
background-color:transparent;
border-radius:var(--rs-radius-full);
transition:background 0.2s linear, border 0.2s linear, box-shadow 0.2s linear;
}
[data-theme=high-contrast] .rs-radio-inner::before, .rs-theme-high-contrast .rs-radio-inner::before{
transition:none;
}
.rs-radio:hover .rs-radio-inner::before{
border-color:var(--rs-radio-checked-bg);
}
.rs-radio[data-disabled=true] .rs-radio-inner::before{
border-color:var(--rs-radio-disabled-bg);
background-color:var(--rs-radio-disabled-bg);
}
.rs-radio[data-checked=true] .rs-radio-inner::before{
border-color:var(--rs-radio-checked-bg);
background-color:var(--rs-radio-checked-bg);
}
.rs-radio[data-disabled=true][data-checked=true] .rs-radio-inner::before{
opacity:0.5;
}
.rs-radio-inner::after{
width:var(--rs-radio-inner-size);
height:var(--rs-radio-inner-size);
background-color:var(--rs-radio-marker);
margin-top:calc((var(--rs-radio-size) - var(--rs-radio-inner-size)) / 2);
margin-inline-start:calc((var(--rs-radio-size) - var(--rs-radio-inner-size)) / 2);
border-radius:var(--rs-radius-full);
opacity:0;
transform:scale(0);
transition:opacity 0.2s ease-in, transform 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46);
}
[data-theme=high-contrast] .rs-radio-inner::after, .rs-theme-high-contrast .rs-radio-inner::after{
transition:none;
}
.rs-radio[data-checked=true] .rs-radio-inner::after{
transform:scale(1);
opacity:1;
}
.rs-radio[data-color=red]{
--rs-radio-checked-bg:var(--rs-red-500);
--rs-radio-border:var(--rs-red-500);
}
.rs-radio[data-color=orange]{
--rs-radio-checked-bg:var(--rs-orange-500);
--rs-radio-border:var(--rs-orange-500);
}
.rs-radio[data-color=yellow]{
--rs-radio-checked-bg:var(--rs-yellow-500);
--rs-radio-border:var(--rs-yellow-500);
}
.rs-radio[data-color=green]{
--rs-radio-checked-bg:var(--rs-green-500);
--rs-radio-border:var(--rs-green-500);
}
.rs-radio[data-color=cyan]{
--rs-radio-checked-bg:var(--rs-cyan-500);
--rs-radio-border:var(--rs-cyan-500);
}
.rs-radio[data-color=blue]{
--rs-radio-checked-bg:var(--rs-blue-500);
--rs-radio-border:var(--rs-blue-500);
}
.rs-radio[data-color=violet]{
--rs-radio-checked-bg:var(--rs-violet-500);
--rs-radio-border:var(--rs-violet-500);
}