/** * Tour | Wrapper * * @class .tour * @selector {::before} * @selector {::after} * @state {.waiting} */ .tour { border-top: 1px solid rgba($black, 0.05); position: relative; top: 1rem; &.waiting::before { top: 0; right: 0; bottom: 0; left: 0; background-color: rgba($white, 0.7); content: ""; cursor: progress; position: absolute; z-index: 5; } &::after { @include clearfix; } } /** * Tour | Navigation * * @class .tour__navigation * * @class .tour__navigation__example * @selector {::before} * @selector {:last-of-type} * @state {.active} * @state {:hover} */ .tour__navigation { width: 100%; list-style-type: none; padding-bottom: 1rem; padding-top: 1.5rem; &::after { @include clearfix; } } .tour__navigation__example { cursor: pointer; float: left; position: relative; text-align: center; width: 33.333333%; &::before { width: 100%; height: 2.5rem; top: -0.6rem; left: 0; content: "example " attr(data-example); font-size: 0.6rem; font-style: italic; line-height: 1.1; position: absolute; text-align: center; text-transform: uppercase; } &:not(.active) { &::before, button, span { color: rgba($black, 0.3); } } &.active, &:hover { button { color: $teal; } &::before, span { color: $black; } } &.completed { &::after { width: 100%; height: 100%; top: 0; left: 0; background-color: rgba($white, 0.7); content: "✓"; font-size: 3rem; line-height: 0.85; position: absolute; z-index: 10; } } &::before, button, span { transition: color 0.2s; } button { background-color: transparent; font-size: 1.25rem; font-weight: 600; } span { display: block; font-size: 1rem; } } /** * Tour | Content * * @class .tour__content * * @class .tour__content__meme * @selector {::after} * * @class .tour__content__meme__canvas * * @class .tour__content__meme__canvas__thumbnail * @selector {:last-of-type} * @state {.selected} * * @class .tour__content__meme__editor * * @class .tour__content__trends * @selector {::after} * @state {:empty} * * @class .tour__content__trend * @class .tour__content__urlbar */ .tour__content { border-top: 1px solid rgba($black, 0.05); overflow-y: visible; padding-bottom: 1rem; padding-top: 1rem; .loader { @extend .__loading; &::after { content: "Processing request"; } } pre { font-size: 1rem; } } .tour__content__meme { overflow-y: auto; position: relative; &::after { @include clearfix; } } .tour__content__meme__canvas { float: left; margin-right: 2%; position: relative; width: 48%; canvas { width: 100%; height: 100%; background-color: rgba($teal, 0.3); margin-bottom: 1rem; } } .tour__content__meme__canvas__thumbnail { width: 5rem; height: 5rem; border-style: solid; border-width: 2px; margin-bottom: 1rem; object-fit: contain; object-position: center; cursor: pointer; &:not(:last-of-type) { margin-right: 1rem; } &:not(.selected) { border-color: transparent; } &.selected { border-color: $black; } } .tour__content__meme__editor { float: right; width: 50%; h2.__metadata { margin-top: 3rem; } fieldset { border: none; &:not(:last-of-type) { margin-bottom: 1rem; } } label { color: rgba($black, 0.3); display: block; font-size: 0.8rem; font-weight: 600; letter-spacing: 0.05rem; margin-bottom: 0.025rem; text-transform: uppercase; width: 100%; } input:not([type="checkbox"]):not([type="submit"]), select, textarea { @media (min-width: 901px) { font-size: 1.25rem; } @media (max-width: 900px) { font-size: 1.05rem; } } input { &:not([type="checkbox"]):not([type="file"]):not([type="submit"]) { border-bottom: 2px solid; padding-bottom: 0.15rem; transition: all 0.2s; width: 100%; } &:not([type="file"]):not([type="submit"]) { &:not(:hover):not(:active) { border-color: $black; } &:hover, &:active { border-color: $teal; } } &[type="checkbox"] { width: 1.25rem; height: 1.25rem; border: 2px solid; margin-right: 0.5rem; position: relative; top: 0.35rem; &::after { width: 100%; height: 100%; content: "✓"; font-size: 1.5rem; line-height: 1rem; position: absolute; } &:not(:checked)::after { color: transparent; } &:checked::after { color: $teal; } } } select, textarea { border-bottom: 2px solid; width: 100%; &:not(:hover):not(:active) { border-color: $black; } &:hover, &:active { border-color: $teal; } } select { background-image: url("/assets/media/svg/down.svg"); background-position: 99% center; background-repeat: no-repeat; background-size: 1rem; padding-right: 2rem; } textarea { min-height: 100px; resize: vertical; } } .tour__content__trends { min-width: 0; min-height: 0; display: grid; grid-gap: 1rem; grid-template: repeat(1, 1fr) / repeat(3, 1fr); position: relative; &:empty { @extend .__loading; &::after { content: "Fetching content from LBRY"; } } } .tour__content__trend { img { width: 100%; height: 213px; cursor: pointer; display: block; margin-bottom: 0.5rem; object-fit: cover; object-position: center; position: relative; } figcaption { cursor: pointer; font-size: 1rem; line-height: 1.33; span { color: rgba($black, 0.3); display: block; font-size: 0.8rem; letter-spacing: 0.025rem; } } } .tour__content__urlbar { border: 1px solid rgba($black, 0.05); display: flex; margin-bottom: 1rem; button, input, span { float: left; vertical-align: middle; } button, span { height: 100%; line-height: 2rem; } button { color: $white; font-size: 1rem; position: relative; text-transform: lowercase; transition: background-color 0.2s; width: 6rem; &::after { width: calc(100% + 2px); height: calc(100% + 2px); top: -1px; left: -1px; content: ""; position: absolute; transition: background-color 0.2s; z-index: -1; } &:not(:hover) { background-color: $black; &::after { background-color: $black; } } &:hover { background-color: $teal; &::after { background-color: $teal; } } } input { font-size: 1rem; width: calc(100% - 9.5rem); &::placeholder { color: rgba($black, 0.5); opacity: 1; } } span { @include no-user-select; color: rgba($black, 0.5); cursor: default; font-size: 1rem; text-align: right; width: 3.5rem; } } /** * Tour | Description * * @class .tour__description */ .tour__description { cursor: default; font-size: 1rem; line-height: 1.33; padding: 1rem; &:not(.success) { background-color: rgba($black, 0.05); text-align: center; } &.success { background-color: rgba($teal, 0.05); strong { display: block; text-transform: uppercase; } } }