not really known
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

587 lines
12 KiB

// recess: ignore
@toolbar-grey: #282828;
@button-grey: #808080;
@panel-grey: #C0C0C0;
@text-field-grey: #E5E5E5;
@link-blue: #0076C3;
@line-width: 2px;
@cell-size: 5 * @subcell-size;
@font-size: 10pt;
@toolbar-height: @cell-size;
@icon-small-size: 2 * @subcell-size;
@toolbutton-size: @toolbar-height - (4 * @line-width);
@toolbar-button-margin-top: (@toolbar-height / 2) - (2 * @line-width) -
(@icon-small-size / 2);
@input-text-padding: (2 * @line-width);
@input-text-line-height: 2 * @subcell-size;
@input-text-width: 3 * @cell-size;
@toolbar-input-height: (@toolbar-height / 2) - (@input-text-line-height / 2) -
(@input-text-padding + @line-width);
@button-small-size: @input-text-line-height + (2 * @input-text-padding) +
(2 * @line-width);
html {
height: 100%;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
position: relative;
height: 100%;
margin: 0;
font-family: sans-serif;
font-size: @font-size;
background-color: @panel-grey;
}
.unselectable {
-webkit-user-select: none;
-moz-user-select: none;
}
.pull-right {
float: right;
}
a {
color: @link-blue;
text-decoration: none;
}
/* Toolbar */
.toolbar {
height: @toolbar-height;
padding: 0 @toolbutton-size + (5 * @line-width);
color: white;
background-color: @toolbar-grey;
.unselectable;
}
/* Toolbar separator */
.toolbar hr {
display: inline-block;
height: 3 * @subcell-size;
margin: (@subcell-size - (@line-width * 3)) / 2;
margin-bottom: -1 * (@subcell-size + (@line-width * 3));
border: (@line-width / 2) solid @button-grey;
}
/* Toolbar toolbutton */
.toolbar .toolbutton {
position: relative;
width: @toolbutton-size;
height: @toolbutton-size;
margin: (2 * @line-width) @line-width;
color: white;
color: transparent;
background-color: transparent;
background-position: center;
background-repeat: no-repeat;
background-size: contain;
border: 0;
border-radius: @subcell-size / 2;
}
.toolbar .toolbutton:hover {
background-color: black;
}
.toolbar .toolbutton:active, .toolbar .toolbutton.active {
background-color: @button-grey;
}
.toolbar .toolbutton img {
width: 100%;
height: 100%;
}
.toolbar .toolbutton:before {
position: absolute;
right: -2 * @line-width;
bottom: -2 * @line-width;
display: block;
width: @cell-size;
height: @subcell-size;
background-color: transparent;
content: "";
}
.toolbar .toolbutton.invoker:before {
background-image: url('../icons/emblems/arrow-down.svg');
}
.toolbar #stop-button {
background-image: url('../icons/actions/activity-stop.svg');
}
/* Canvas */
#canvas {
position: absolute;
top: @toolbar-height;
bottom: 0;
width: 100%;
overflow-y: auto;
color: black;
background-color: @panel-grey;
}
/* Button */
button {
padding: @line-width (2 * @line-width);
line-height: @icon-small-size;
color: white;
background-color: @button-grey;
border: @line-width solid transparent;
border-radius: 2 * @subcell-size;
.unselectable;
}
button:hover {
background-color: @button-grey + #222;
border-color: @button-grey + #222;
}
button:active {
color: black;
background-color: white;
border-color: @button-grey;
}
button:focus {
border-color: white;
}
.toolbar button {
margin-top: @toolbar-button-margin-top;
}
/* Button with icon */
button.icon {
position: relative;
padding-left: @icon-small-size + (2 * @line-width);
}
button.icon span.ok {
background-image: url(../icons/actions/dialog-ok.svg);
}
button.icon:active span.ok {
background-image: url(../icons/actions/dialog-ok-active.svg);
}
button.icon span.cancel {
background-image: url(../icons/actions/dialog-cancel.svg);
}
button.icon:active span.cancel {
background-image: url(../icons/actions/dialog-cancel-active.svg);
}
button.icon span {
position: absolute;
display: inline-block;
width: @icon-small-size;
height: @icon-small-size;
background-color: transparent;
background-position: center;
background-repeat: no-repeat;
background-size: @icon-small-size @icon-small-size;
}
button.icon span {
top: @line-width;
left: @line-width;
}
/* One line text input */
input[type='text'] {
width: @input-text-width;
padding: @input-text-padding;
line-height: @input-text-line-height;
background-color: @text-field-grey;
border: @line-width solid @text-field-grey;
border-radius: 2 * @subcell-size;
outline: 0;
}
input[type='text']:focus {
background-color: white;
}
input[type='text']:disabled {
background-color: @button-grey;
border-color: @button-grey;
}
.toolbar input[type='text'], .palette .row input[type='text'] {
margin-top: @toolbar-input-height;
}
.palette .row input[type='text']:nth-last-child(1) {
margin-top: @toolbar-input-height - @line-width;
}
input[type='text'].expand {
width: calc(~"100%" - (2 * @input-text-padding + 2 * @line-width));
}
/* One line text input with buttons inside */
.icon-input {
position: relative;
display: inline-block;
}
.icon-input input[type='text'] {
width: @input-text-width + @input-text-padding - @button-small-size;
padding-right: @button-small-size;
}
.icon-input.expand {
width: 100%;
}
.icon-input.expand input[type='text'] {
width: calc(~"100%" - (@input-text-padding + 2 * @line-width +
@button-small-size));
}
.icon-input button {
position: absolute;
width: @button-small-size;
height: @button-small-size;
padding: 0;
background-size: @icon-small-size @icon-small-size;
}
.icon-input button.right {
right: 0;
margin: 0 0 0 -@button-small-size;
border-radius: 0 (2 * @subcell-size) (2 * @subcell-size) 0;
}
.icon-input button {
background-color: transparent;
background-position: center;
background-repeat: no-repeat;
border: 0;
}
.icon-input button {
top: @line-width;
}
.toolbar .icon-input button:hover {
background-color: transparent;
}
.toolbar .icon-input button {
top: @toolbar-input-height;
}
button.cancel {
background-image: url(../icons/actions/entry-cancel.svg);
}
button.cancel:active {
background-image: url(../icons/actions/entry-cancel-active.svg);
}
button.cancel:disabled {
background-image: url(../icons/actions/entry-cancel-disabled.svg);
}
/* Slider */
/* FIXME this is not fully Sugarized yet */
input[type='range'] {
height: @subcell-size;
cursor: pointer;
background-color: @button-grey;
border-radius: 2 * @subcell-size;
-webkit-appearance: none !important;
}
input[type='range']::-webkit-slider-thumb {
width: @icon-small-size;
height: @icon-small-size;
background-color: @panel-grey;
border: (2 * @line-width) solid @button-grey;
border-radius: @subcell-size;
-webkit-appearance: none !important;
}
input[type='range']::-webkit-slider-thumb:hover {
background-color: @panel-grey + #222;
border-color: @button-grey + #222;
}
.toolbar input[type='range'] {
margin-top: (@toolbar-height / 2) - (@subcell-size / 2);
}
/* Label */
label {
.unselectable;
}
/* Palette */
.palette {
position: absolute;
color: white;
pointer-events: none;
background-color: transparent;
}
.palette-invoker {
width: @cell-size - 2 * @line-width;
height: @cell-size - @line-width;
background-color: black;
background-position: @line-width @line-width;
background-repeat: no-repeat;
background-size: @toolbutton-size;
border: @line-width solid @button-grey;
border-bottom: 0;
}
.palette-invoker:after {
position: absolute;
top: 4 * @subcell-size;
left: 0;
display: block;
width: @cell-size;
height: @subcell-size;
background-color: transparent;
background-image: url('../icons/emblems/arrow-up.svg');
content: "";
}
.palette-invoker:before {
position: absolute;
top: @cell-size;
left: @line-width;
display: block;
width: @cell-size - 2 * @line-width;
height: @line-width;
background-color: black;
content: "";
}
.palette .wrapper {
max-width: 5 * @cell-size - 2 * @line-width;
min-width: 3 * @cell-size - 2 * @line-width;
min-height: @cell-size - 2 * @line-width;
pointer-events: auto;
background-color: black;
border: @line-width solid @button-grey;
}
.palette .header {
height: @cell-size - 2 * @line-width;
margin: 0 (@subcell-size / 2);
font-weight: bold;
line-height: @cell-size - 2 * @line-width;
.unselectable;
}
.palette hr {
border: (@line-width / 2) solid @button-grey;
}
.palette hr.header-separator {
margin-top: 0;
}
.palette .row {
height: @cell-size;
margin: 0 (@subcell-size / 2);
}
.palette .row:nth-last-child(1) {
height: @cell-size - 2 * @line-width;
}
.palette .row.small {
height: 2 * @subcell-size;
}
.palette .row.expand {
height: auto;
}
/* Palette menu */
.palette .menu {
padding: 0;
margin-top: @subcell-size;
margin-bottom: @subcell-size;
list-style-type: none;
}
.palette .menu button {
width: 100%;
padding-top: 0;
padding-bottom: 0;
margin-top: 0;
margin-bottom: 0;
line-height: 3 * @subcell-size;
text-align: left;
background-color: transparent;
border: 0;
border-radius: 0;
}
.palette .menu button:hover {
color: white;
background-color: @button-grey;
}
.palette .menu button.icon {
padding-left: 3 * @subcell-size + 2 * @line-width;
}
.palette .menu button.icon span {
top: 0;
left: 0;
width: 3 * @subcell-size;
height: 3 * @subcell-size;
}
/* Scrollbar */
::-webkit-scrollbar {
width: @subcell-size;
background-color: @button-grey;
}
::-webkit-scrollbar-thumb {
background-color: white;
border: @line-width solid #ddd;
border-radius: @subcell-size;
}
/* Grid for visual debugging and layout */
.grid {
position: absolute;
top: 0;
left: 0;
background-color: transparent;
}
.appearance(@value) {
-webkit-appearance: @value;
-moz-appearance: @value;
appearance: @value;
}
/* Checkbox and radio */
input[type='checkbox'],
input[type='radio'] {
width: @icon-small-size;
height: @icon-small-size;
margin: @line-width @line-width (2 * @line-width) @line-width;
vertical-align: middle;
background-position: center;
background-size: contain;
.appearance(none);
}
.toolbar input[type='checkbox'],
.toolbar input[type='radio'] {
margin-top: (@toolbar-height - @icon-small-size) / 2 - @line-width;
margin-bottom: (@toolbar-height - @icon-small-size) / 2 + @line-width;
}
input[type='checkbox'] {
background-image: url(../icons/actions/checkbox-unchecked.svg);
}
input[type='checkbox']:active {
background-image: url(../icons/actions/checkbox-checked-selected.svg);
}
input[type='checkbox']:checked:active {
background-image: url(../icons/actions/checkbox-checked-selected.svg);
}
input[type='checkbox']:checked {
background-image: url(../icons/actions/checkbox-checked.svg);
}
input[type='radio'] {
background-image: url(../icons/actions/radio.svg);
}
input[type='radio']:active {
background-image: url(../icons/actions/radio-selected.svg);
}
input[type='radio']:checked:active {
background-image: url(../icons/actions/radio-active-selected.svg);
}
input[type='radio']:checked {
background-image: url(../icons/actions/radio-active.svg);
}
/* Textarea */
textarea {
margin: @line-width;
border: @line-width solid @button-grey;
}
textarea.expand {
width: calc(~"100%" - (6 * (@line-width)));
}
/* Lists */
ul.flat-list {
padding: 0;
margin: 0;
list-style-type: none;
}
ul.flat-list li {
height: 3 * @subcell-size - @line-width;
line-height: 3 * @subcell-size - @line-width;
background-color: white;
border-bottom: @line-width dotted @panel-grey;
}
ul.flat-list li:nth-last-child(1) {
border-bottom: none;
}
ul.flat-list.big li {
height: 4 * @subcell-size - @line-width;
line-height: 4 * @subcell-size - @line-width;
}
ul.flat-list.striped li:nth-child(odd) {
background-color: @text-field-grey;
}
/* ActivityPalette */
#activity-palette .wrapper {
width: 5 * @cell-size - 2 * @line-width;
}