.margin-center { margin-left: auto; margin-right: auto; } .flex-shrink-0 { flex-shrink: 0; } .flex-grow-1 { flex-grow: 1; } .flex-fair { flex-basis: 1px; flex-grow: 1; flex-shrink: 1; } @media screen and (min-width: 35em) { .flex-fair-ns { flex-basis: 1px; flex-grow: 1; flex-shrink: 1; } } @media screen and (min-width: 60em) { .flex-fair-l { flex-basis: 1px; flex-grow: 1; flex-shrink: 1; } } .c--normal { color: var(--main-color); } .c--inherit { color: inherit; &:hover, &:active { color: inherit; } } .b--theme { border-color: var(--theme-color); } .c--dim { color: var(--dim-color); } .c--theme-dim { color: var(--theme-color-dim); } .b--dim { border-color: var(--dim-color); } .b--theme-dim { border-color: var(--theme-color-dim); } .c--dimmer { color: var(--dimmer-color); } .c--theme-dimmer { color: var(--theme-color-dimmer); } .b--dimmer { border-color: var(--dimmer-color); } .b--theme-dimmer { border-color: var(--theme-color-dimmer); } .c--dimmest { color: var(--dimmest-color); } .c--theme-dimmest { color: var(--theme-color-dimmest); } .b--dimmest { border-color: var(--dimmest-color); } .b--theme-dimmest { border-color: var(--theme-color-dimmest); } .bg--dim { background-color: var(--dim-background); } .bg--content { background-color: var(--content-background); } .bg--card { background-color: var(--card-background); } .f8 { font-size: 0.65rem; } .mw-site { max-width: 80rem; } .mh-3 { max-height: var(--height-3); } .mh-4 { max-height: var(--height-4); } .mh-5 { max-height: var(--height-5); } .mh-6 { max-height: var(--height-6); } .mh-100 { max-height: 100%; } .mh-50vh { max-height: 50vh; } .mh-60vh { max-height: 60vh; } .mh-70vh { max-height: 70vh; } .mh-80vh { max-height: 80vh; } .minw-100 { min-width: 100%; } .minh-1 { min-height: var(--height-1); } .minh-2 { min-height: var(--height-2); } .minh-3 { min-height: var(--height-3); } .minh-4 { min-height: var(--height-4); } .minh-5 { min-height: var(--height-5); } .minh-6 { min-height: var(--height-6); } .h1-5 { height: 1.5rem; } .fira { font-family: "Fira Sans", sans-serif; } .bi-avoid { break-inside: avoid; } .cc-auto { column-count: auto; } .cc1 { column-count: 1; } .cc2 { column-count: 2; } .cc3 { column-count: 3; } .cg0 { column-gap: var(--spacing-none); } .cg1 { column-gap: var(--spacing-extra-small); } .cg2 { column-gap: var(--spacing-small); } .cg3 { column-gap: var(--spacing-medium); } .cg4 { column-gap: var(--spacing-large); } .cg5 { column-gap: var(--spacing-extra-large); } .g0 { gap: var(--spacing-none); } .g1 { gap: var(--spacing-extra-small); } .g2 { gap: var(--spacing-small); } .g3 { gap: var(--spacing-medium); } .g4 { gap: var(--spacing-large); } .g5 { gap: var(--spacing-extra-large); } .grid { display: grid; } .grid-1 { grid-template-columns: 1fr; } .grid-2 { grid-template-columns: 1fr 1fr; } .aspect-ratio--2x1 { padding-bottom: 50%; } .hide-if-empty:empty { display: none !important; } @media screen and (min-width: 35em) { .bi-avoid-ns { break-inside: avoid; } .cc-auto-ns { column-count: auto; } .cc1-ns { column-count: 1; } .cc2-ns { column-count: 2; } .cc3-ns { column-count: 3; } .cg0-ns { column-gap: var(--spacing-none); } .cg1-ns { column-gap: var(--spacing-extra-small); } .cg2-ns { column-gap: var(--spacing-small); } .cg3-ns { column-gap: var(--spacing-medium); } .cg4-ns { column-gap: var(--spacing-large); } .cg5-ns { column-gap: var(--spacing-extra-large); } .grid-1-ns { grid-template-columns: 1fr; } .grid-2-ns { grid-template-columns: 1fr 1fr; } .bg--dim-ns { background-color: var(--dim-background); } } @media screen and (min-width: 35em) and (max-width: 60em) { .bi-avoid-m { break-inside: avoid; } .cc-auto-m { column-count: auto; } .cc1-m { column-count: 1; } .cc2-m { column-count: 2; } .cc3-m { column-count: 3; } .cg1-m { column-gap: var(--spacing-extra-small); } .cg2-m { column-gap: var(--spacing-small); } .cg3-m { column-gap: var(--spacing-medium); } .cg4-m { column-gap: var(--spacing-large); } .cg5-m { column-gap: var(--spacing-extra-large); } .grid-1-m { grid-template-columns: 1fr; } .grid-2-m { grid-template-columns: 1fr 1fr; } .bg--dim-m { background-color: var(--dim-background); } } @media screen and (min-width: 60em) { .bi-avoid-l { break-inside: avoid; } .cc-auto-l { column-count: auto; } .cc1-l { column-count: 1; } .cc2-l { column-count: 2; } .cc3-l { column-count: 3; } .cg1-l { column-gap: var(--spacing-extra-small); } .cg2-l { column-gap: var(--spacing-small); } .cg3-l { column-gap: var(--spacing-medium); } .cg4-l { column-gap: var(--spacing-large); } .cg5-l { column-gap: var(--spacing-extra-large); } .grid-1-l { grid-template-columns: 1fr; } .grid-2-l { grid-template-columns: 1fr 1fr; } .bg--dim-l { background-color: var(--dim-background); } } .not-first:first-child { display: none; } .not-first-of-type:first-of-type { display: none; } .not-last:last-child { display: none; } .not-last-of-type:last-of-type { display: none; } .svgicon { svg { fill: currentColor; stroke: currentColor; width: 1em; height: 1em; } &:not(.svgicon-nofix) svg { transform: translate(0px, 0.1em); } } /* Tachyons' `center` is unfortunately overloaded by a .center class we have in our own CSS. */ .center-layout { margin-right: auto; margin-left: auto; } footer { .list li:not(:last-child)::after { @extend .c--dimmer; @media #{var(--breakpoint-not-small)} { & { content: ' / '; } } } } .content { background-color: var(--content-background); margin: auto; p { -moz-text-size-adjust: auto; -webkit-text-size-adjust: auto; text-size-adjust: auto; margin: 0.6rem 0; } .description { line-height: 1.42em; text-align: left; margin: auto; p { margin-bottom: var(--spacing-small); text-align: left; } } >.top-bar { text-align: left; } } .content-block { // TODO: What the heck are these styles /* Background color given by theme */ background-repeat: repeat-x; border-radius: 2px; text-align: left; width: 100%; /* box-shadow: 0px 4px 7px rgba(0,0,0,0.5); /* Not themed */ position: relative; box-sizing: border-box; &.top-bar { background-image: none; } &.language-desc { padding: 10px; h3 { margin-left: 10px; } } .no-bg { background-image: none; background-color: transparent; box-shadow: none; } } .sidebar { .content-block { &.single { padding: 0px; /* for project list, TODO */ margin-top: 20px; } &.top-bar { /* box-shadow: 0px 2px 4px rgba(0,0,0,0.2); /* Not themed */ width: 80%; display: block; margin: 10px auto; } } br.sidebar-filler { line-height: 20px; } .projectlist { background-color: transparent; } } .content-block .bottom-padding, .sidebar .bottom-padding { margin-top: var(--spacing-medium); } .breadcrumb { &:hover { text-decoration: underline; } &.current { text-overflow: clip ellipsis; } } .breadcrumb-before:nth-of-type(n+2)::before { content: '≫'; } .optionbar { @extend .b--dimmest; width: 100%; display: flex; flex-direction: column; justify-content: space-between; text-align: center; align-items: center; border-style: dashed; border-width: 0px; border-bottom-width: 1px; padding-bottom: var(--spacing-small); @media #{var(--breakpoint-not-small)} { flex-direction: row; text-align: left; padding-bottom: 0; } &.bottom { border-bottom-width: 0px; border-top-width: 1px; padding-bottom: 0; padding-top: var(--spacing-small); @media #{var(--breakpoint-not-small)} { padding-top: 0; } } &.center { text-align: center; // TODO: find this and kill it } .options { display: flex; flex-direction: column; @media #{var(--breakpoint-not-small)} { flex-direction: row; } & { #{var(--buttons)} { @include lite-button; @extend .ph2; @extend .pv1; @extend .pv2-ns; } } } .group { display: inline-block; height: 100%; margin: auto; } } .tab { background-color: var(--tab-background); @extend .pa2; } .tab-bar { border-color: var(--tab-border-color); @extend .flex, .flex-row; width: 100%; .tab-button { background-color: var(--tab-button-background); border-color: var(--tab-border-color); @extend .ph3, .pv2; cursor: pointer; // TODO: Should this be a link? &:hover { background-color: var(--tab-button-background-hover); } &.current { background-color: var(--tab-button-background-current); font-weight: 500; } } } .pagination { .page.current { cursor: default; font-weight: 600; &:hover { text-decoration: none; } } .button { @extend .pv0, .ph2; } } .user-link { position: relative; } // TODO(ben): It appears that this code is inactive because the JS that would // create the popups is commented out. .user-popup { opacity: 0; max-height: 0px; width: 340px; text-align: center; transition: max-height 0.2s, opacity 0.1s; box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3); overflow: hidden; position: absolute; bottom: 0px; &.expanded { visibility: visible; max-height: 250px; opacity: 1; } table { /* Background color given by theme */ width: 100%; position: relative; border-radius: 3px; z-index: 10; } td { vertical-align: top; padding: 15px 9px; } #avatar { width: 100px; height: 100px; background-size: contain; background-position: center center; background-repeat: no-repeat; border-radius: 3px; margin: 0px auto; } .username { font-weight: bold; } .bottom { /* Border color given by theme */ border-top: 1px solid transparent; padding: 15px; .bio { vertical-align: top; width: 90%; } } } .site-search { &[type=text].lite { // wow CSS selector priority sucks // First transition copied from input .lite transition: border-bottom-color 60ms ease-in-out, width 300ms ease; } } #search_button_homepage { margin: 0px; height: 100%; height: calc(100% - 2px); border-radius: 0px; display: inline-block; display: none; } .background-even:nth-of-type(even) { // this is the default, and should be overridden by dynamic colors. background-color: var(--background-even-background); --fade-color: var(--background-even-background); } .sr-only { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important; transition: 0.2s all; } .sr-focusable { @extend .sr-only; &:focus { padding: 15px 10px; height: auto; width: auto; background: var(--content-background); clip: initial; clip-path: initial; z-index: 99999; } }