gluon/package/gluon-config-mode-theme/sass/gluon.scss

673 lines
9.8 KiB
SCSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
ATTENTION: This file is not compiled when building gluon.
The compiled version is at ../files/lib/gluon/config-mode/www/static/gluon.css
Use sass like this to update it:
sass --sourcemap=none -C -t compressed sass/gluon.scss files/lib/gluon/config-mode/www/static/gluon.css
When commiting changes to this file make sure to commit the respective
changes to the compilid version within the same commit!
*/
@charset "utf-8";
$ffyellow: #ffb400;
$ffmagenta: #dc0067;
$ffzusatz: #009ee0;
$red: #ee3300;
@mixin button {
&::-moz-focus-inner {
padding: 0;
border: 0;
}
display: inline-block;
line-height: normal;
white-space: nowrap;
vertical-align: baseline;
text-align: center;
cursor: pointer;
user-select: none;
font-size: 100%;
padding: 0.5rem 1rem;
color: rgba(0, 0, 0, 0.80);
background-color: #E6E6E6;
border: none;
text-decoration: none;
border-radius: 2px;
/* Transitions */
transition: 0.1s linear box-shadow;
&:active {
box-shadow: 0 0 0 1px rgba(0,0,0, 0.15) inset, 0 0 6px rgba(0,0,0, 0.20) inset;
}
&:focus {
outline: 0;
}
&:hover, &:focus {
background-image: linear-gradient(transparent, rgba(0,0,0, 0.05) 40%, rgba(0,0,0, 0.10));
}
&[disabled] {
border: none;
background-image: none;
opacity: 0.40;
cursor: not-allowed;
box-shadow: none;
}
}
html {
min-height: 100%;
height: auto;
position: relative;
}
body, input, select, option {
font: 12pt "Open Sans", Arial, sans-serif
}
body {
color: rgb(77, 78, 83);
line-height: 1.5rem;
margin: 0;
display: flex;
flex-direction: column;
min-height: 100vh;
background-color: #f3f3f3;
}
.tabmenu1 {
text-align: center;
}
ul.tabmenu {
list-style: none;
padding: 0;
margin: 2rem 0 0;
display: block;
li {
white-space: nowrap;
margin: 0 0.5rem;
padding: 0;
text-align: center;
a {
display: block;
text-decoration: none;
padding: 1rem;
margin: 0;
color: #333;
border-radius: 2rem;
&:hover {
background: lighten($ffyellow, 35);
}
}
&.active a {
font-weight: bold;
background: white;
color: #333;
}
}
}
.error {
color: #ff0000;
background-color: white;
padding: 1rem;
font-weight: bold;
}
#menubar {
background: $ffmagenta;
color: #ffffff;
a:link.topcat,
a:visited.topcat {
position: relative;
display: block;
padding: 0.5rem;
text-decoration: none;
font-size: 80%;
font-weight: normal;
color: white;
&:hover, &:focus {
background: $ffyellow;
color: black;
}
&.active {
font-weight: bold;
background: $ffzusatz;
color: white;
}
}
.hostinfo {
position: relative;
margin: 0;
padding: 0.5rem;
flex: 1;
font-weight: bold;
font-size: 80%;
a {
&:link, &:visited {
text-decoration: none;
font-weight: bold;
color: white;
&:hover, &:focus {
text-decoration: underline;
}
}
}
}
}
#topmenu {
list-style: none;
margin: 0;
padding: 0;
li {
display: inline-block;
}
}
#maincontent {
max-width: 60rem;
margin: 1rem auto;
padding: 0;
border-radius: 0.5rem;
p {
margin: 0 1rem 1rem;
}
ul {
margin-left: 2rem;
}
}
.gluon-section {
margin: 0 0 1.25rem;
padding: 0;
border: none;
&:last-child {
margin-bottom: 0.75rem;
}
legend {
font-size: 1.5rem;
font-weight: bold;
position: relative;
margin-bottom: 0.5rem;
padding: 1rem;
}
h2 {
margin: 0 0 0.5rem -0.5rem;
}
h3 {
text-decoration: none;
font-weight: bold;
color: #555555;
margin: 0.25rem;
font-size: 100%;
}
}
body.admin-network .gluon-section {
margin-bottom: 0;
}
.gluon-section-descr {
margin-bottom: 2rem;
}
.gluon-osm-map {
width: 100%;
height: 40rem;
margin-bottom: 1rem;
}
#value-id\.1\.6\.map {
margin: 0 1rem;
}
input {
&::placeholder,
&::-webkit-input-placeholder {
color: #aaaaaa;
}
&[type=checkbox] {
display: none;
& + label {
display: inline-block;
position: relative;
width: 1rem;
height: 1rem;
margin: 0;
}
&:checked + label::after {
content: '';
color: $ffmagenta;
vertical-align: middle;
position: absolute;
top: 50%;
left: 0;
margin-top: -33.333%;
width: 100%;
text-align: center;
font-size: 1.7rem;
}
}
&[type=radio] {
display: none;
& + label {
display: inline-block;
position: relative;
width: 0.75rem;
height: 0.75rem;
padding: 0.75rem;
margin: 0.25rem 0.25rem 0.25rem 0.125rem;
border: none;
background: lighten($ffyellow, 30);
vertical-align: middle;
border-radius: 50%;
}
&:checked + label::after {
content: '';
color: $ffmagenta;
vertical-align: middle;
position: absolute;
top: 50%;
left: 0;
margin-top: -0.5rem;
width: 100%;
text-align: center;
font-size: 2rem;
}
}
&[type=submit],
&[type=reset],
&[type=button] {
cursor: pointer;
}
}
select,
input,
textarea,
input[type=checkbox] + label {
color: darken($ffzusatz, 30);
border: none;
background: lighten($ffyellow, 30);
border-radius: 3pt;
padding: 0.5rem;
margin-top: 1px;
margin-bottom: 2px;
box-sizing: content-box;
outline: 0;
}
select, input[type="text"],
input[type="password"] {
min-width: auto;
}
.select-wrapper {
position: relative;
display: inline-block;
&::before {
position: absolute;
z-index: 1;
right: 0.125rem;
top: calc(2px + 0.125rem);
bottom: calc(2px + 0.125rem);
width: 1.5rem;
border-left: 0.125rem solid rgba(0, 0, 0, 0.25);
pointer-events: none;
background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="8" height="5"><path fill="none" stroke="black" stroke-linejoin="bevel" d="M1,1L4,4L7,1"/></svg>') center / 0.75rem 0.5rem no-repeat;
content: '';
}
select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
cursor: pointer;
}
}
option {
color: darken($ffzusatz, 30);
background: lighten($ffyellow, 30);
}
.gluon-button {
@include button;
margin-left: 0.5rem;
background-repeat: no-repeat;
}
.gluon-button-reset {
background-color: $red;
color: #fff;
}
.gluon-button-submit {
background-color: $ffzusatz;
color: #fff;
&:active {
background: grey;
}
}
.gluon-input-invalid {
background: $red !important;
color: white;
}
textarea {
margin-left: -1px;
margin-bottom: 0.5rem;
max-width: calc(100% - 3rem);
}
.gluon-value {
margin-bottom: .75rem;
}
.gluon-section-node .gluon-value:last-child {
margin-bottom: 0;
}
.gluon-value-title {
padding-top: .5rem;
padding-right: 1rem;
font-weight: bold;
padding-left: 1rem;
overflow-wrap: break-word;
}
.gluon-value-field {
position: relative;
margin-right: 1rem;
select, input + label {
position: relative;
margin-left: 1rem;
}
select {
padding-right: 2rem;
}
input,
.gluon-add,
.gluon-value-description {
margin-left: 1rem;
}
}
.gluon-value-field-text {
padding-top: 0.5rem;
padding-left: 1rem;
overflow-wrap: break-word;
}
.gluon-value-field-long {
flex: 10;
position: relative;
margin-top: 0.75rem;
input, select, input + label {
position: relative;
}
}
.gluon-value-field-long-after {
flex: 2;
}
.gluon-value-description {
font-size: 0.75rem;
}
.gluon-form-descr {
margin-bottom: 1rem;
}
.gluon-form-descr,
.gluon-section-descr {
&:empty {
display: none;
}
}
.gluon-form-descr,
.gluon-section-descr {
padding: 1rem;
background: #ececec;
}
.gluon-page-actions {
padding: 1rem;
background: #ececec;
text-align: right;
display: flex;
flex-flow: row-reverse;
}
.gluon-section-node {
clear: both;
position: relative;
border: none;
}
.gluon-value-error {
input,
select {
background-color: #ffcccc;
}
}
.gluon-add,
.gluon-remove {
&::after {
cursor: pointer;
display: inline-block;
text-align: center;
vertical-align: middle;
font-size: 180%;
width: 1.25rem;
height: 1rem;
}
}
.gluon-add {
color: #008000;
position: relative;
left: 21.75rem;
input + & {
left: 0;
top: 0.125rem;
}
&:first-child {
top: 0.5rem;
left: -0.125rem;
}
&::after {
content: '+';
}
}
.gluon-remove {
color: #800000;
position: relative;
top: -0.375rem;
margin-left: 0.75rem;
&::after {
content: '';
}
}
.error500 {
border: 1px dotted #ff0000;
background-color: #ffffff;
color: #000000;
padding: 0.5rem;
}
.errorbox {
border: 1px solid #FF0000;
background-color: #FFCCCC;
padding: 5px;
margin-bottom: 5px;
a {
color: #000000 !important;
}
}
.the-key {
text-align: left;
font-size: 1.5rem;
background: lighten($ffyellow, 35);
border: 3pt dashed $ffmagenta;
margin-bottom: 0.5rem;
padding: 0.5rem
}
h2 {
color: $ffzusatz;
padding: 1rem;
}
fieldset.gluon-section {
padding-top: 1rem;
}
input[type="checkbox"] + label, select {
border: 1px solid #c0c0c0;
margin-top: 0;
margin-bottom: 1px;
}
input,
option,
select,
input[type="checkbox"] + label,
textarea,
ul.tabmenu li a:hover,
#menubar a:link.topcat:hover,
#menubar a:link.topcat:focus,
#menubar a:visited.topcat:hover,
#menubar a:visited.topcat:focus {
background-color: #99d9F5;
}
.gluon-page-actions {
padding: 1rem;
border-radius: 0 0 0.5rem 0.5rem;
}
.gluon-form-descr,
.gluon-section-descr {
margin: 0 1rem 1rem;
}
.gluon-value:last-child {
padding-bottom: 1rem;
}
textarea,
.gluon-form > p,
form > p {
margin: 0 1rem;
}
// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) {
#menubar {
display: flex;
}
select,
input[type=text],
input[type=password] {
min-width: 20rem;
}
}
// Medium devices (tablets, 768px and up)
@media (min-width: 768px) {
#maincontent {
min-width: 40rem;
}
.gluon-value-field {
margin-right: auto;
}
}
// Large devices (desktops, 992px and up)
@media (min-width: 992px) {
ul.tabmenu {
display: inline-flex;
}
.gluon-value {
display: flex;
flex-direction: row;
}
.gluon-value-title {
flex: 2;
text-align: right;
}
.gluon-value-field {
flex: 3;
}
.gluon-value-field-text {
flex: 3;
padding-left: 0;
}
}
// X-Large devices (large desktops, 1200px and up)
@media (min-width: 1200px) {
#value-id\.1\.6\.map {
margin: 0;
}
}