UNPKG

@vtmn/css-button

Version:

Decathlon Design System - Vitamin specific CSS styles for button component

356 lines (292 loc) 9.4 kB
.vtmn-btn{ display:flex; flex-direction:row; justify-content:center; align-items:center; position:relative; block-size:4.8rem; border:0; line-height:1; inline-size:-moz-max-content; inline-size:max-content; padding-block:1.4rem; padding-inline:2.4rem; font-family:var(--vtmn-typo_font-family); font-weight:var(--vtmn-typo_font-weight--bold); font-size:var(--vtmn-typo_text-2-font-size); letter-spacing:0.027rem; border-radius:var(--vtmn-radius_100); color:var(--vtmn-semantic-color_content-primary-reversed); fill:var(--vtmn-semantic-color_content-primary-reversed); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; background-color:var(--vtmn-semantic-color_background-brand-primary); transition:var(--vtmn-transition_focus-visible); } .vtmn-btn:not(:disabled):hover{ background-color:var(--vtmn-semantic-color_hover-brand); cursor:pointer; } .vtmn-btn:not(:disabled):active{ background-color:var(--vtmn-semantic-color_active-brand); } .vtmn-btn:disabled{ cursor:not-allowed; opacity:var(--vtmn-opacity_disabled-state); } .vtmn-btn:not(:disabled):focus-visible{ outline:none; box-shadow:var(--vtmn-shadow_focus-visible); } .vtmn-btn:not(:disabled){ outline:none; } .vtmn-btn_variant--primary{ background-color:var(--vtmn-semantic-color_background-brand-primary); color:var(--vtmn-semantic-color_content-primary-reversed); fill:var(--vtmn-semantic-color_content-primary-reversed); } .vtmn-btn_variant--primary:not(:disabled):hover{ background-color:var(--vtmn-semantic-color_hover-brand); } .vtmn-btn_variant--primary:not(:disabled):active{ background-color:var(--vtmn-semantic-color_active-brand); } .vtmn-btn_variant--primary-reversed{ box-shadow:none; background-color:var( --vtmn-semantic-color_background-brand-primary-reversed ); color:var(--vtmn-semantic-color_content-primary); fill:var(--vtmn-semantic-color_content-primary); } .vtmn-btn_variant--primary-reversed:not(:disabled):hover{ background-color:var( --vtmn-semantic-color_hover-tertiary-reversed-transparent ); box-shadow:inset 0 0 0 0.2rem var(--vtmn-semantic-color_border-secondary); } .vtmn-btn_variant--primary-reversed:not(:disabled):active{ background-color:var( --vtmn-semantic-color_active-brand-reversed-transparent ); box-shadow:inset 0 0 0 0.2rem var(--vtmn-semantic-color_border-secondary); } .vtmn-btn_variant--primary-reversed:not(:disabled):focus-visible{ outline:none; box-shadow:inset 0 0 0 0.2rem var(--vtmn-semantic-color_border-secondary), 0 0 0 0.4rem var(--vtmn-semantic-color_border-secondary), 0 0 0 0.6rem var(--vtmn-semantic-color_border-primary-reversed); } .vtmn-btn_variant--secondary{ background-color:var(--vtmn-semantic-color_background-primary); box-shadow:inset 0 0 0 0.2rem var(--vtmn-semantic-color_border-primary); color:var(--vtmn-semantic-color_content-action); fill:var(--vtmn-semantic-color_content-action); } .vtmn-btn_variant--secondary:not(:disabled):hover{ background-color:var(--vtmn-semantic-color_hover-primary); } .vtmn-btn_variant--secondary:not(:disabled):active{ background-color:var(--vtmn-semantic-color_active-primary); } .vtmn-btn_variant--secondary:not(:disabled):focus-visible{ outline:none; box-shadow:inset 0 0 0 0.2rem var(--vtmn-semantic-color_border-primary), var(--vtmn-shadow_focus-visible); } .vtmn-btn_variant--tertiary{ background-color:var(--vtmn-semantic-color_background-brand-secondary); color:var(--vtmn-semantic-color_content-action); fill:var(--vtmn-semantic-color_content-action); } .vtmn-btn_variant--tertiary:not(:disabled):hover{ background-color:var(--vtmn-semantic-color_hover-tertiary); } .vtmn-btn_variant--tertiary:not(:disabled):active{ background-color:var(--vtmn-semantic-color_active-tertiary); } .vtmn-btn_variant--conversion{ box-shadow:inset 0 0 0 0.2rem transparent; background-color:var(--vtmn-semantic-color_background-accent); color:var(--vtmn-semantic-color_content-accent); fill:var(--vtmn-semantic-color_content-accent); } .vtmn-btn_variant--conversion:not(:disabled):hover{ background-color:var(--vtmn-semantic-color_hover-accent); } .vtmn-btn_variant--conversion:not(:disabled):active{ background-color:var(--vtmn-semantic-color_active-accent); } .vtmn-btn_variant--conversion:not(:disabled):focus-visible{ outline:none; box-shadow:inset 0 0 0 0.2rem transparent, var(--vtmn-shadow_focus-visible); } .vtmn-btn_variant--ghost{ background-color:transparent; box-shadow:inset 0 0 0 0.2rem transparent; color:var(--vtmn-semantic-color_content-action); fill:var(--vtmn-semantic-color_content-action); } .vtmn-btn_variant--ghost:not(:disabled):hover{ background-color:var(--vtmn-semantic-color_hover-primary); } .vtmn-btn_variant--ghost:not(:disabled):active{ background-color:var(--vtmn-semantic-color_active-primary); } .vtmn-btn_variant--ghost:not(:disabled):focus-visible{ outline:none; box-shadow:inset 0 0 0 0.2rem transparent, var(--vtmn-shadow_focus-visible); } .vtmn-btn_variant--ghost-reversed{ background-color:transparent; color:var(--vtmn-semantic-color_content-action-reversed); fill:var(--vtmn-semantic-color_content-action-reversed); } .vtmn-btn_variant--ghost-reversed:not(:disabled):hover{ background-color:var( --vtmn-semantic-color_hover-primary-reversed-transparent ); } .vtmn-btn_variant--ghost-reversed:not(:disabled):active{ background-color:var( --vtmn-semantic-color_active-primary-reversed-transparent ); } .vtmn-btn_variant--ghost-reversed:not(:disabled):focus-visible{ outline:none; box-shadow:0 0 0 0.4rem var(--vtmn-semantic-color_border-secondary), 0 0 0 0.6rem var(--vtmn-semantic-color_border-primary-reversed); } .vtmn-btn_size--small{ font-size:1.4rem; padding-block:0.8rem; padding-inline:1.6rem; block-size:3.2rem; letter-spacing:0.024rem; } .vtmn-btn_size--medium{ font-size:1.6rem; padding-block:1.4rem; padding-inline:2.4rem; block-size:4.8rem; letter-spacing:0.027rem; } .vtmn-btn_size--large{ font-size:2rem; padding-block:2rem; padding-inline:4rem; block-size:6.4rem; letter-spacing:0.034rem; } .vtmn-btn_size--stretched{ inline-size:100%; } .vtmn-btn--icon-alone{ inline-size:4.8rem; block-size:4.8rem; padding:1.4rem; } .vtmn-btn--icon-alone span[class^='vtmx-']{ font-size:2.4rem; } .vtmn-btn_size--small.vtmn-btn--icon-alone{ inline-size:3.2rem; block-size:3.2rem; padding:0.8rem; } .vtmn-btn_size--small.vtmn-btn--icon-alone span[class^='vtmx-']{ font-size:2rem; } .vtmn-btn_size--medium.vtmn-btn--icon-alone{ inline-size:4.8rem; block-size:4.8rem; padding:1.4rem; } .vtmn-btn_size--medium.vtmn-btn--icon-alone span[class^='vtmx-']{ font-size:2.4rem; } .vtmn-btn_size--large.vtmn-btn--icon-alone{ inline-size:6.4rem; block-size:6.4rem; padding:2rem; } .vtmn-btn_size--large.vtmn-btn--icon-alone span[class^='vtmx-']{ font-size:3.2rem; } .vtmn-btn--icon-left span[class^='vtmx-'], .vtmn-btn_size--medium.vtmn-btn--icon-left span[class^='vtmx-']{ -webkit-padding-end:0.8rem; padding-inline-end:0.8rem; font-size:2rem; } .vtmn-btn_size--small.vtmn-btn--icon-left span[class^='vtmx-']{ -webkit-padding-end:0.6rem; padding-inline-end:0.6rem; font-size:1.6rem; } .vtmn-btn_size--small.vtmn-btn--icon-right span[class^='vtmx-']{ -webkit-padding-start:0.6rem; padding-inline-start:0.6rem; font-size:1.6rem; } .vtmn-btn_size--small.vtmn-btn--icon-left svg{ -webkit-margin-end:0.6rem; margin-inline-end:0.6rem; } .vtmn-btn_size--small.vtmn-btn--icon-right svg{ -webkit-margin-start:0.6rem; margin-inline-start:0.6rem; } .vtmn-btn--icon-right span[class^='vtmx-'], .vtmn-btn_size--medium.vtmn-btn--icon-right span[class^='vtmx-']{ -webkit-padding-start:0.8rem; padding-inline-start:0.8rem; font-size:2rem; } .vtmn-btn_size--medium.vtmn-btn--icon-left svg{ -webkit-margin-end:0.8rem; margin-inline-end:0.8rem; } .vtmn-btn_size--medium.vtmn-btn--icon-right svg{ -webkit-margin-start:0.8rem; margin-inline-start:0.8rem; } .vtmn-btn_size--large.vtmn-btn--icon-left span[class^='vtmx-']{ -webkit-padding-end:1.2rem; padding-inline-end:1.2rem; font-size:2.4rem; } .vtmn-btn_size--large.vtmn-btn--icon-right span[class^='vtmx-']{ -webkit-padding-start:1.2rem; padding-inline-start:1.2rem; font-size:2.4rem; } .vtmn-btn_size--large.vtmn-btn--icon-left svg{ -webkit-margin-end:1.2rem; margin-inline-end:1.2rem; } .vtmn-btn_size--large.vtmn-btn--icon-right svg{ -webkit-margin-start:1.2rem; margin-inline-start:1.2rem; } .vtmn-btn--multiline{ white-space:normal; } .vtmn-btn_variant--secondary-reversed{ background-color:transparent; box-shadow:inset 0 0 0 0.2rem var(--vtmn-base-color_white); color:var(--vtmn-base-color_white); fill:var(--vtmn-base-color_white); } .vtmn-btn_variant--secondary-reversed:not(:disabled):hover{ background-color:hsla(0, 0%, 100%, 0.2); } .vtmn-btn_variant--secondary-reversed:not(:disabled):active{ background-color:hsla(0, 0%, 100%, 0.4); } @media screen and (min-width: 600px) and (max-width: 899px){ } @media screen and (min-width: 900px) and (max-width: 1199px){ } @media screen and (min-width: 1200px) and (max-width: 1799px){ } @media screen and (min-width: 1800px){ }