overleaf/services/web/public/stylesheets/app/editor.less

508 lines
9.3 KiB
Text
Raw Normal View History

2014-06-26 15:39:52 +00:00
@import "./editor/file-tree.less";
@import "./editor/history.less";
2014-06-26 15:39:52 +00:00
@import "./editor/toolbar.less";
@import "./editor/left-menu.less";
2014-06-28 12:25:06 +00:00
@import "./editor/pdf.less";
2015-08-04 09:45:19 +00:00
@import "./editor/enago.less";
2014-07-01 13:12:28 +00:00
@import "./editor/share.less";
2014-07-02 14:56:09 +00:00
@import "./editor/chat.less";
2014-07-03 16:05:50 +00:00
@import "./editor/binary-file.less";
2014-07-10 16:27:19 +00:00
@import "./editor/search.less";
2014-07-15 16:56:09 +00:00
@import "./editor/publish-template.less";
2014-07-17 14:25:22 +00:00
@import "./editor/online-users.less";
2014-07-22 13:38:32 +00:00
@import "./editor/hotkeys.less";
2016-10-11 13:24:01 +00:00
@import "./editor/review-panel.less";
@import "./editor/feature-onboarding.less";
2014-06-26 15:39:52 +00:00
2017-02-23 15:47:48 +00:00
@keyframes blink {
0% {
opacity: 0.2;
}
20% {
opacity: 1;
}
100% {
opacity: 0.2;
}
}
2014-06-24 19:28:53 +00:00
.full-size {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
2014-06-24 15:33:36 +00:00
.global-alerts {
height: 0;
margin-top: 2px;
text-align: center;
2014-07-02 15:41:29 +00:00
.alert {
display: inline-block;
text-align: left;
min-width: 400px;
2014-07-02 15:41:29 +00:00
padding: (@line-height-computed / 4);
font-size: 14px;
margin-bottom: (@line-height-computed / 4);
position: relative;
z-index: 20;
2014-07-02 15:41:29 +00:00
}
2014-06-24 15:33:36 +00:00
}
#try-reconnect-now-button {
margin-left: 20px;
}
2014-06-24 15:33:36 +00:00
#ide-body {
2014-06-24 19:28:53 +00:00
.full-size;
2014-06-24 15:33:36 +00:00
top: 40px;
}
2014-06-24 14:31:44 +00:00
#editor {
2014-06-24 19:28:53 +00:00
.full-size;
2014-06-26 16:25:25 +00:00
}
2014-06-24 14:31:44 +00:00
2014-07-10 12:41:54 +00:00
.loading-screen {
2017-02-23 15:47:48 +00:00
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
background-color: #FFF;
}
2017-08-01 15:02:19 +00:00
.loading-screen-brand-container {
2017-02-23 15:47:48 +00:00
width: 15%;
min-width: 200px;
2014-07-10 12:41:54 +00:00
text-align: center;
}
2017-08-01 15:02:19 +00:00
.loading-screen-brand {
2017-02-23 15:47:48 +00:00
position: relative;
width: 100%;
2017-08-07 14:45:33 +00:00
padding-top: @editor-loading-logo-padding-top;
2017-02-23 15:47:48 +00:00
height: 0;
2017-08-07 14:45:33 +00:00
background: @editor-loading-logo-background-url no-repeat bottom / 100%;
2017-02-23 15:47:48 +00:00
&::after {
content: '';
position: absolute;
height: inherit;
right: 0;
bottom: 0;
left: 0;
2017-08-08 06:17:16 +00:00
background: @editor-loading-logo-foreground-url no-repeat bottom / 100%;
2017-02-23 15:47:48 +00:00
transition: height .5s;
}
}
.loading-screen-label {
margin: 0;
padding-top: 1em;
font-size: 2em;
color: @gray-dark;
}
.loading-screen-ellip {
animation: blink 1.4s both infinite;
&:nth-child(2) {
animation-delay: 0.2s;
}
&:nth-child(3) {
animation-delay: 0.4s;
}
}
.loading-screen-error {
margin: 0;
padding-top: 1em;
color: @state-danger-text;
}
2014-07-10 12:41:54 +00:00
2014-06-27 11:45:37 +00:00
.loading-panel {
2014-06-26 16:25:25 +00:00
.full-size;
padding-top: 10rem;
font-family: @font-family-serif;
text-align: center;
background-color: #fafafa;
2014-06-24 16:50:59 +00:00
}
2014-06-27 11:45:37 +00:00
.error-panel {
.full-size;
padding: @line-height-computed;
background-color: #fafafa;
.alert {
max-width: 400px;
margin: auto;
}
}
2014-07-03 15:18:49 +00:00
.project-name {
.name {
display: inline-block;
max-width: 250px;
overflow: hidden;
text-overflow: ellipsis;
vertical-align: top;
padding: 6px;
color: @gray;
font-weight: 700;
white-space: nowrap;
}
input {
height: 30px;
margin-top: 4px;
text-align: center;
padding: 6px;
font-weight: 700;
}
a.rename {
visibility: hidden;
2016-02-23 15:00:15 +00:00
display: inline-block;
color: @gray-light;
padding: 5px;
border-radius: @border-radius-small;
&:hover {
text-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
color: @gray-dark;
text-decoration: none;
}
2014-07-03 15:18:49 +00:00
}
&:hover {
a.rename {
visibility: visible;
}
}
}
2014-06-24 14:31:44 +00:00
// The internal components of the aceEditor directive
.ace-editor-wrapper {
2014-06-24 19:28:53 +00:00
.full-size;
2014-06-24 14:31:44 +00:00
.undo-conflict-warning {
position: absolute;
top: 0;
right: 0;
left: 0;
z-index: 10;
}
.ace-editor-body {
width: 100%;
height: 100%;
}
2014-06-25 15:06:04 +00:00
.spelling-highlight {
position: absolute;
background-image: url(/img/spellcheck-underline.png);
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
background-image: url(/img/spellcheck-underline@2x.png);
2016-11-30 14:34:50 +00:00
background-size: 5px 4px;
}
2014-06-25 15:06:04 +00:00
background-repeat: repeat-x;
background-position: bottom left;
}
2014-06-25 17:17:17 +00:00
.remote-cursor {
2014-06-30 13:01:39 +00:00
position: absolute;
2014-06-26 10:19:05 +00:00
border-left: 2px solid transparent;
2014-06-25 17:17:17 +00:00
.nubbin {
2014-06-26 10:19:05 +00:00
height: 5px;
width: 5px;
2014-06-25 17:17:17 +00:00
position: absolute;
2014-06-26 10:19:05 +00:00
left: -2px;
2014-06-25 17:17:17 +00:00
}
}
2014-06-26 10:19:05 +00:00
.annotation-label {
padding: (@line-height-computed / 4) (@line-height-computed / 2);
font-size: 0.8rem;
z-index: 100;
font-family: @font-family-sans-serif;
color: white;
font-weight: 700;
white-space: nowrap;
2014-06-26 10:19:05 +00:00
}
2014-06-27 11:45:37 +00:00
.annotation {
position: absolute;
z-index: 2;
}
2014-10-08 15:32:42 +00:00
.highlights-before-label, .highlights-after-label {
position: absolute;
right: @line-height-computed;
2014-10-08 15:32:42 +00:00
z-index: 1;
}
.highlights-before-label {
top: @line-height-computed / 2;
}
.highlights-after-label {
bottom: @line-height-computed / 2;
}
2014-06-24 14:31:44 +00:00
}
// Hack to solve an issue where scrollbars aren't visible in Safari.
// Safari seems to clip part of the scrollbar element. By giving the
// element a background, we're telling Safari that it *really* needs to
// paint the whole area. See https://github.com/ajaxorg/ace/issues/2872
.ace_scrollbar-inner {
background-color: #FFF;
opacity: 0.01;
.ace_dark & {
background-color: #000;
}
}
2014-06-21 21:20:37 +00:00
.ui-layout-resizer {
width: 6px;
background-color: #f4f4f4;
2014-06-24 14:31:44 +00:00
border-left: 1px solid @toolbar-border-color;
border-right: 1px solid @toolbar-border-color;
2014-06-21 21:20:37 +00:00
.ui-layout-toggler {
color: #999;
font-family: FontAwesome;
font-style: normal;
font-weight: normal;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-size: 16px !important;
line-height: 50px;
2014-02-12 10:23:40 +00:00
&:hover {
2014-06-21 21:20:37 +00:00
background-color: #ddd;
2014-02-12 10:23:40 +00:00
color: #333;
}
}
}
2014-06-21 21:20:37 +00:00
.ui-layout-resizer-west.ui-layout-resizer-open, .ui-layout-resizer-east.ui-layout-resizer-closed {
.ui-layout-toggler {
&:before {
content: "\f104"
2014-02-12 10:23:40 +00:00
}
}
}
2014-06-21 21:20:37 +00:00
.ui-layout-resizer-east.ui-layout-resizer-open, .ui-layout-resizer-west.ui-layout-resizer-closed {
.ui-layout-toggler {
&:before {
content: "\f105"
2014-02-12 10:23:40 +00:00
}
}
}
2014-06-21 21:20:37 +00:00
.ui-layout-resizer-dragging {
2014-02-12 10:23:40 +00:00
background-color: #ddd;
2014-06-24 19:28:53 +00:00
}
2014-06-25 15:06:04 +00:00
.context-menu {
position: fixed;
z-index: 100;
}
.editor-dark {
color: @gray-lighter;
background-color: @editor-dark-background-color;
.ui-layout-resizer {
background-color: darken(@editor-dark-background-color, 10%);
border: none;
}
.btn-default {
color: white;
background-color: @gray;
border-color: darken(@gray-dark, 10%);
&:hover {
background-color: darken(@gray, 5%);
border-color: darken(@gray-dark, 20%);
}
}
}
2015-12-08 08:50:11 +00:00
.modal-alert {
margin-top:10px;
margin-bottom:0px;
}
2016-02-10 10:39:04 +00:00
2016-11-02 16:59:57 +00:00
// vertically centre the "connection down" modal so it does not hide
// the reconnecting indicator
.modal.lock-editor-modal {
display: flex !important;
.modal-dialog {
margin: auto;
}
}
.sl_references_search_hint-varDefault {
position: absolute;
bottom: -22px;
left: -1px;
right: 0px;
text-align: center;
padding: 2px;
background: rgb(202, 214, 250);
border: 1px solid lightgray;
box-shadow: 3px 3px 5px rgba(0,0,0,.2);
span {
color: black;
}
}
2016-07-21 13:11:17 +00:00
.sl_references_search_hint-varButton {
position: absolute;
2016-07-20 16:04:25 +00:00
bottom: -65px;
left: -1px;
right: 0px;
2016-07-20 16:04:02 +00:00
padding: 0 6px 6px;
text-align: center;
2016-07-20 16:04:02 +00:00
background: #fbfbfb;
color: #FFF;
box-shadow: 3px 3px 5px rgba(0,0,0,.2);
border-left: 1px solid lightgray;
2016-07-20 14:32:10 +00:00
font-family: @font-family-sans-serif;
font-size: 13px;
font-weight: 600;
2016-07-20 16:04:25 +00:00
hr {
margin: 6px -6px;
}
button {
width: 100%;
font-size: inherit;
line-height: 1.4;
}
span {
padding-left: 10px;
}
kbd {
2016-07-20 16:04:25 +00:00
display: block;
font-family: inherit;
2016-07-20 16:04:25 +00:00
font-size: 12px;
font-weight: normal;
}
}
2016-07-21 13:11:17 +00:00
// -- References Search Modal --
.references-search-modal-backdrop {
// don't grey out the editor when the
// modal is active
background-color: transparent;
}
2016-02-10 10:39:04 +00:00
.references-search-modal {
// upgrade prompt
2016-02-17 14:49:37 +00:00
.references-search-upgrade-prompt {
2016-02-17 16:44:41 +00:00
padding: 24px;
padding-bottom: 48px;
.upgrade-prompt {
2016-02-17 14:49:37 +00:00
text-align: center;
2016-02-17 16:44:41 +00:00
width: 400px;
padding-top: 14px;
padding-bottom: 14px;
padding-left: 38px;
padding-right: 38px;
margin: auto;
background: white;
opacity: 0.95;
border-radius: 8px;
.message {
margin-top: 15px;
&.call-to-action {
font-weight: bold;
}
ul.list-unstyled {
text-align: left;
}
}
a.btn {
opacity: 1.0;
}
2016-02-17 14:49:37 +00:00
}
}
2016-02-10 10:39:04 +00:00
.search-form {
// position the spinner inside the input element
2016-02-15 16:11:59 +00:00
i.fa-spinner {
margin-top: -30px;
2016-02-10 10:39:04 +00:00
}
}
2016-02-12 16:24:35 +00:00
.alert-danger {
margin-top: 12px;
margin-bottom: 0px;
}
// search result items list
2016-02-10 10:39:04 +00:00
.search-results {
font-size: 12px;
2016-02-12 16:24:35 +00:00
.no-results-message {
font-size: 16px;
}
.search-result-hit {
2016-02-12 16:24:35 +00:00
&:hover {
cursor: pointer;
}
2016-02-10 13:24:07 +00:00
border-bottom: 1px solid #ddd;
padding: 8px;
2016-02-10 13:24:07 +00:00
&:last-child {
border-bottom: 1px solid transparent;
}
2016-02-11 15:03:19 +00:00
border-left: 4px solid transparent;
&.selected-search-result-hit {
2016-02-12 16:24:35 +00:00
background-color: @red;
color: white;
2016-02-15 16:11:59 +00:00
.hit-year.small {
color: white;
}
2016-03-01 16:29:19 +00:00
.hit-journal.small {
color: white;
}
2016-02-11 15:03:19 +00:00
}
.hit-title {
font-size: 1.3em;
font-style: italic;
}
2016-02-10 13:24:07 +00:00
}
2016-02-10 10:39:04 +00:00
}
2016-07-18 15:07:00 +00:00
}
.referencesImportModal {
.referencesImportPreview {
margin-top: 15px;
.referencesImportPreviewScroller {
font-family: monospace;
font-size: 0.8em;
max-height: 360px;
overflow: scroll;
white-space: pre;
padding: 8px 12px;
margin-bottom: 15px;
border: 1px solid @gray-lighter;
background-color: @gray-lightest;
}
}
2016-10-04 10:57:42 +00:00
}
2016-10-27 09:29:38 +00:00
.teaser-title,
2016-10-04 10:57:42 +00:00
.dropbox-teaser-title {
margin-top: 0;
text-align: center;
}
2016-10-27 09:29:38 +00:00
.teaser-img,
2016-10-04 10:57:42 +00:00
.dropbox-teaser-img {
.img-responsive;
margin-bottom: 5px;
}
2016-11-03 16:14:13 +00:00
.teaser-video-container,
.dropbox-teaser-video-container {
margin-top: -@modal-inner-padding;
margin-left: -@modal-inner-padding;
margin-right: -@modal-inner-padding;
margin-bottom: 5px;
overflow: hidden;
}
2016-11-03 16:14:13 +00:00
.teaser-video,
.dropbox-teaser-video {
width: 100%;
height: auto;
2016-11-03 16:14:13 +00:00
border-bottom: 1px solid @modal-header-border-color;
}
2017-07-31 13:51:22 +00:00