/** * Type styles */ @mixin type-heading-lg { // font-family: Syne; font-size: var(--fs-3xl); font-weight: bold; line-height: var(--lh-tighter); letter-spacing: var(--ls-tighter); } @mixin type-heading-md { // font-family: Syne; font-size: var(--fs-2xl); font-weight: bold; line-height: var(--lh-tighter); letter-spacing: var(--ls-tight); } @mixin type-heading-sm { // font-family: Syne; font-size: var(--fs-xl); font-weight: bold; line-height: var(--lh-tight); letter-spacing: var(--ls-tight); } @mixin type-body-lg { // font-family: Inter; font-size: var(--fs-lg); font-weight: normal; line-height: var(--lh-normal); letter-spacing: var(--ls-normal); } @mixin type-body-strong { // font-family: Inter; font-size: var(--fs-md); font-weight: bold; line-height: var(--lh-normal); letter-spacing: var(--ls-normal); } @mixin type-body { // font-family: Inter; font-size: var(--fs-md); font-weight: normal; line-height: var(--lh-normal); letter-spacing: var(--ls-normal); } @mixin type-body-compact { // font-family: Inter; font-size: var(--fs-sm); font-weight: normal; line-height: var(--lh-tight); letter-spacing: var(--ls-normal); } @mixin type-label-lg { // font-family: Inter; font-size: var(--fs-sm); font-weight: bold; line-height: var(--lh-tight); letter-spacing: var(--ls-normal); } @mixin type-label-md { // font-family: Inter; font-size: var(--fs-xs); font-weight: normal; line-height: var(--lh-tighter); letter-spacing: var(--ls-loose); } @mixin type-label-sm { // font-family: Inter; font-size: var(--fs-2xs); font-weight: normal; line-height: var(--lh-tighter); letter-spacing: var(--ls-loose); } @mixin type-micro { // font-family: 'JetBrains Mono'; font-size: var(--fs-3xs); font-weight: normal; line-height: var(--lh-tighter); letter-spacing: var(--ls-looser); } /** * Elevation styles */ @mixin elevation-1 { border: 1px solid var(--color-border-strong); box-shadow: 0 1px 0 var(--color-border-strong); } @mixin elevation-2 { border: 1px solid var(--color-border-strong); box-shadow: 1px 2px 0 var(--color-border-strong); } /** * Search input styles */ @mixin search-input { box-sizing: border-box; width: 100%; box-shadow: none; font-family: inherit; background: var(--color-bg-secondary); color: var(--color-text-primary); border-radius: 4px; border: 1px solid var(--color-border-primary); font-size: 17px; line-height: normal; margin: 0; outline: var(--outline-focus-default); outline-color: transparent; outline-offset: -1px; transition: outline-color 0.15s ease-out; } @mixin search-popout { background: var(--color-bg-primary); border-radius: 4px; padding: 10px 14px; padding-bottom: 14px; margin-top: 10px; color: var(--color-text-secondary); box-shadow: 2px 4px 15px var(--color-shadow-primary); h4 { text-transform: uppercase; color: var(--color-text-secondary); font-size: 13px; font-weight: 500; margin-bottom: 10px; } li { padding: 4px 0; } ul { margin-bottom: 10px; } em { font-weight: 500; color: var(--color-text-primary); } }