src/main/webapp/lightpit.css

Sun, 03 Sep 2023 12:02:44 +0200

author
Mike Becker <universe@uap-core.de>
date
Sun, 03 Sep 2023 12:02:44 +0200
changeset 289
d702bdd4da51
parent 283
ea6181255423
child 333
124f605ec40a
permissions
-rw-r--r--

fonts and styles are now cachable - fixes #286

/*
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 * 
 * Copyright 2021 Mike Becker. All rights reserved.
 * 
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 *   1. Redistributions of source code must retain the above copyright
 *      notice, this list of conditions and the following disclaimer.
 *
 *   2. Redistributions in binary form must reproduce the above copyright
 *      notice, this list of conditions and the following disclaimer in the
 *      documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 * 
 */

@font-face {
    font-family: LightPIT;
    src: url('fonts/MPLUS1p-Thin.ttf');
    font-weight: 100;
}

@font-face {
    font-family: LightPIT;
    src: url('fonts/MPLUS1p-Light.ttf');
    font-weight: 300;
}

@font-face {
    font-family: LightPIT;
    src: url('fonts/MPLUS1p-Regular.ttf');
    font-weight: 400;
}

@font-face {
    font-family: LightPIT;
    src: url('fonts/MPLUS1p-Medium.ttf');
    font-weight: 500;
}

@font-face {
    font-family: LightPIT;
    src: url('fonts/MPLUS1p-Bold.ttf');
    font-weight: 700;
}

html {
    font-family: LightPIT,sans-serif;
    font-size: 11pt;
    background: white;
    color: #1c204e;
    margin: 0;
    padding: 0;
    height: 100vh;
}

body {
    height: 100%;
    margin: 0;
    padding: 0;
}

h2 {
    margin: 0.75em 0;
}

h3 {
    margin: 0.25em 0;
}

textarea, input, button, select {
    font-family: inherit;
    font-size: inherit;
}

a {
    cursor: pointer;
    color: #3060f8;
    text-decoration: none;
}

#body-area {
    display: grid;
    grid-template-columns: min-content auto;
    grid-template-rows: max-content 1fr;
    height: 100%;
}

#mainMenu {
    grid-row: 1;
    grid-column: 1 / span 2;
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    border-image-source: linear-gradient(to right, #606060, rgba(60, 60, 60, .25));
    border-image-slice: 1;
    border-bottom-style: solid;
    border-bottom-width: thin;
    font-size: 1.2rem;
    background: #e0e0e5;
}

#sideMenu {
    grid-row: 2;
    grid-column: 1;
    min-width: 15vw;
    display: flex;
    flex-flow: column;
    color: #3060f8;
    border-image-source: linear-gradient(to bottom, #606060, rgba(60, 60, 60, .25));
    border-image-slice: 1;
    border-right-style: solid;
    border-right-width: thin;
    background: #f7f7ff;
}

#sideMenuFiller {
    grid-row: 2;
    grid-column: 1;
}

#mainMenu .menuEntry {
    padding: .25em 1em .25em 1em;
    border-right-style: solid;
    border-right-width: thin;
    border-right-color: #9095a1;
}

#sideMenu .menuEntry {
    white-space: nowrap;
    padding-right: 2em;
    padding-top: .25em;
    padding-bottom: .25em;
    border-bottom-style: solid;
    border-bottom-width: thin;
    border-bottom-color: #d7d7df;
}

#mainMenu .menuEntry[data-active] {
    background: #d0d0d5;
}

#sideMenu .menuEntry[data-active] {
    background: #e7e7ef
}

#sideMenu .level-0 {
    padding-left: .75em;
}

#sideMenu .level-1 {
    padding-left: 1.25em;
}

#sideMenu .level-2 {
    padding-left: 2.5em;
}

#content-area {
    grid-row: 2;
    grid-column: 2;
    padding: 1.5em;
}

button, a.button {
    display: inline-block;
    font-size: medium;
    border-style: solid;
    border-width: thin;
    border-color: #606060;
    color: inherit;
    background: #f0f0f0;

    padding: .25em .5em .25em .5em;
    cursor: default;
    text-decoration: none;
    text-align: center;
    font-variant-caps: small-caps;
}

button:hover, a.button:hover {
    background: #f0f0ff;
}

button[data-toggle], a.button[data-toggle] {
    border-color: #1040a0;
    background: #d0d0d5;
}

button[type=submit], a.button.submit {
    background: #20a0ff;
    color: white;
}

button[type=submit]:hover, a.button.submit:hover {
    background: #1090cf;
}

th {
    text-align: left;
}

table.datatable {
    border-style: solid;
    border-width: thin;
    border-color: silver;
    border-collapse: collapse;
}

table.datatable th {
    white-space: nowrap;
    font-weight: bold;
    background: #f7f7ff;
}

table.datatable th, table.datatable td {
    border-style: solid;
    border-width: thin;
    border-color: lightgray;
    padding: .4em;
}

table.datatable tr:nth-child(2n) {
    background: #faffff;
}

table.formtable {
    border-style: none;
    border-collapse: separate;
    border-spacing: 1em;
}

table.formtable th {
    font-weight: bold;
    text-align: left;
    vertical-align: center;
    white-space: nowrap;
}

table.formtable tbody td > * {
    margin: 0;
    box-sizing: border-box;
}

table.formtable input[type=text],
table.formtable input[type=url],
table.formtable input[type=email],
table.formtable input[type=number],
table.formtable select,
table.formtable textarea {
    width: 100%;
}

table.formtable tfoot td {
    text-align: right;
}

.fullwidth {
    width: 100%;
}

.vtop {
    vertical-align: top;
}

.hcenter {
    text-align: center;
}

.hright {
    text-align: right;
}

.smalltext {
    font-size: smaller;
}

.nowrap {
    white-space: nowrap;
}

.medskip {
    margin-top: .5em;
}

.info-box, .error-box, .warn-box {
    margin: 1.5em;
    border-style: dashed;
    border-width: thin;
    border-color: deepskyblue;
    padding: 1em;
}

.error-box {
    border-style: outset;
    border-color: red;
    background: lightcoral;
}

.warn-box {
    border-style: outset;
    border-color: gold;
    background: lightgoldenrodyellow;
}

.table {
    display: table;
    border-spacing: .5em;
    margin: -.5em;
}

.row {
    display: table-row;
}

.caption {
    font-weight: bold;
}

.row > div {
    display: table-cell;
}

/* MARKDOWN STYLES */

div.markdown-styled p:first-child {
    margin-top: 0;
}

div.markdown-styled table {
    border-collapse: collapse;
}

div.markdown-styled td,
div.markdown-styled th {
    padding: 0.25em;
    border-style: solid;
    border-color: darkgray;
    border-width: thin;
}

mercurial