.composer { padding: 10px; } .no-reduce-motion .composer--spoiler { transition: height 0.4s ease, opacity 0.4s ease; } .composer--spoiler { height: 0; transform-origin: bottom; opacity: 0.0; &.composer--spoiler--visible { height: 47px; opacity: 1.0; } input { display: block; box-sizing: border-box; margin: 0; border: none; border-radius: 4px; padding: 10px; width: 100%; outline: 0; color: $inverted-text-color; background: $simple-background-color; font-size: 14px; font-family: inherit; resize: vertical; &:focus { outline: 0 } @include single-column('screen and (max-width: 630px)') { font-size: 16px } } } .composer--warning { color: $inverted-text-color; margin-bottom: 15px; background: $ui-primary-color; box-shadow: 0 2px 6px rgba($base-shadow-color, 0.3); padding: 8px 10px; border-radius: 4px; font-size: 13px; font-weight: 400; a { color: $lighter-text-color; font-weight: 500; text-decoration: underline; &:active, &:focus, &:hover { text-decoration: none } } } .composer--reply { margin: 0 0 10px; border-radius: 4px; padding: 10px; background: $ui-primary-color; & > header { margin-bottom: 5px; overflow: hidden; & > .account.small { color: $inverted-text-color; } & > .cancel { float: right; line-height: 24px; } } & > .content { position: relative; margin: 10px 0; padding: 0 12px; font-size: 14px; line-height: 20px; color: $inverted-text-color; word-wrap: break-word; font-weight: 400; overflow: visible; white-space: pre-wrap; padding-top: 5px; p { margin-bottom: 20px; &:last-child { margin-bottom: 0 } } a { color: $lighter-text-color; text-decoration: none; &:hover { text-decoration: underline } &.mention { &:hover { text-decoration: none; span { text-decoration: underline } } } } } .emojione { width: 20px; height: 20px; margin: -5px 0 0; } } .emoji-picker-dropdown { position: absolute; right: 5px; top: 5px; ::-webkit-scrollbar-track:hover, ::-webkit-scrollbar-track:active { background-color: rgba($base-overlay-background, 0.3); } } .composer--textarea { position: relative; label { .autosuggest-textarea__textarea { display: block; box-sizing: border-box; margin: 0; border: none; border-radius: 4px 4px 0 0; padding: 10px 32px 0 10px; width: 100%; min-height: 100px; outline: 0; color: $inverted-text-color; background: $simple-background-color; font-size: 14px; font-family: inherit; resize: none; scrollbar-color: initial; &::-webkit-scrollbar { all: unset; } &:disabled { background: $ui-secondary-color } &:focus { outline: 0 } @include single-column('screen and (max-width: 630px)') { font-size: 16px } @include limited-single-column('screen and (max-width: 600px)') { height: 100px !important; // prevent auto-resize textarea resize: vertical; } } } } .composer--textarea--icons { display: block; position: absolute; top: 29px; right: 5px; bottom: 5px; overflow: hidden; & > .textarea_icon { display: block; margin: 2px 0 0 2px; width: 24px; height: 24px; color: $lighter-text-color; font-size: 18px; line-height: 24px; text-align: center; opacity: .8; } } .autosuggest-textarea__suggestions { display: block; position: absolute; box-sizing: border-box; top: 100%; border-radius: 0 0 4px 4px; padding: 6px; width: 100%; color: $inverted-text-color; background: $ui-secondary-color; box-shadow: 4px 4px 6px rgba($base-shadow-color, 0.4); font-size: 14px; z-index: 99; display: none; } .autosuggest-textarea__suggestions--visible { display: block; } .autosuggest-textarea__suggestions__item { display: flex; flex-direction: row; align-items: center; justify-content: flex-start; border-radius: 4px; padding: 10px; font-size: 14px; line-height: 18px; overflow: hidden; cursor: pointer; &:hover, &:focus, &:active, &.selected { background: darken($ui-secondary-color, 10%) } & > .emoji { img { display: block; float: left; margin-right: 8px; width: 18px; height: 18px; } } & > .account.small { .display-name { & > span { color: $lighter-text-color } } } } .composer--upload_form { padding: 5px; color: $inverted-text-color; background: $simple-background-color; font-size: 14px; & > .content { display: flex; flex-direction: row; flex-wrap: wrap; font-family: inherit; overflow: hidden; } } .composer--upload_form--item { flex: 1 1 0; margin: 5px; min-width: 40%; & > div { position: relative; border-radius: 4px; height: 140px; width: 100%; background-position: center; background-size: cover; background-repeat: no-repeat; overflow: hidden; textarea { display: block; position: absolute; box-sizing: border-box; bottom: 0; left: 0; margin: 0; border: 0; padding: 10px; width: 100%; color: $secondary-text-color; background: linear-gradient(0deg, rgba($base-shadow-color, 0.8) 0, rgba($base-shadow-color, 0.35) 80%, transparent); font-size: 14px; font-family: inherit; font-weight: 500; opacity: 0; z-index: 2; transition: opacity .1s ease; &:focus { color: $white } &::placeholder { opacity: 0.54; color: $secondary-text-color; } } & > .close { mix-blend-mode: difference } } &.active { & > div { textarea { opacity: 1 } } } } .composer--upload_form--actions { background: linear-gradient(180deg, rgba($base-shadow-color, 0.8) 0, rgba($base-shadow-color, 0.35) 80%, transparent); display: flex; align-items: flex-start; justify-content: space-between; opacity: 0; transition: opacity .1s ease; .icon-button { flex: 0 1 auto; color: $ui-secondary-color; font-size: 14px; font-weight: 500; padding: 10px; font-family: inherit; &:hover, &:focus, &:active { color: lighten($ui-secondary-color, 4%); } } &.active { opacity: 1; } } .composer--upload_form--progress { display: flex; padding: 10px; color: $darker-text-color; overflow: hidden; & > .fa { font-size: 34px; margin-right: 10px; } & > .message { flex: 1 1 auto; & > span { display: block; font-size: 12px; font-weight: 500; text-transform: uppercase; } & > .backdrop { position: relative; margin-top: 5px; border-radius: 6px; width: 100%; height: 6px; background: $ui-base-lighter-color; & > .tracker { position: absolute; top: 0; left: 0; height: 6px; border-radius: 6px; background: $ui-highlight-color; } } } } .compose-form__modifiers { color: $inverted-text-color; font-family: inherit; font-size: 14px; background: $simple-background-color; } .composer--options { padding: 10px; background: darken($simple-background-color, 8%); box-shadow: inset 0 5px 5px rgba($base-shadow-color, 0.05); border-radius: 0 0 4px 4px; height: 27px; & > * { display: inline-block; box-sizing: content-box; padding: 0 3px; height: 27px; line-height: 27px; vertical-align: bottom; } & > hr { display: inline-block; margin: 0 3px; border-width: 0 0 0 1px; border-style: none none none solid; border-color: transparent transparent transparent darken($simple-background-color, 24%); padding: 0; width: 0; height: 27px; background: transparent; } } .composer--options--dropdown { &.open { & > .value { border-radius: 4px 4px 0 0; box-shadow: 0 -4px 4px rgba($base-shadow-color, 0.1); color: $primary-text-color; background: $ui-highlight-color; transition: none; } &.top { & > .value { border-radius: 0 0 4px 4px; box-shadow: 0 4px 4px rgba($base-shadow-color, 0.1); } } } } .composer--options--dropdown--content { position: absolute; border-radius: 4px; box-shadow: 2px 4px 15px rgba($base-shadow-color, 0.4); background: $simple-background-color; overflow: hidden; transform-origin: 50% 0; } .composer--options--dropdown--content--item { display: flex; align-items: center; padding: 10px; color: $inverted-text-color; cursor: pointer; & > .content { flex: 1 1 auto; color: $lighter-text-color; &:not(:first-child) { margin-left: 10px } strong { display: block; color: $inverted-text-color; font-weight: 500; } } &:hover, &.active { background: $ui-highlight-color; color: $primary-text-color; & > .content { color: $primary-text-color; strong { color: $primary-text-color } } } &.active:hover { background: lighten($ui-highlight-color, 4%) } } .composer--publisher { padding-top: 10px; text-align: right; white-space: nowrap; overflow: hidden; & > .count { display: inline-block; margin: 0 16px 0 8px; font-size: 16px; line-height: 36px; } & > .primary { display: inline-block; margin: 0; padding: 0 10px; text-align: center; } & > .side_arm { display: inline-block; margin: 0 2px 0 0; padding: 0; width: 36px; text-align: center; } &.over { & > .count { color: $warning-red } } }