2023-04-20 15:50:50 +02:00

844 lines
17 KiB
CSS

@import url("layout.css");
@import url("airbase.css");
@import url("atc.css");
@import url("connectionstatuspanel.css");
@import url("contextmenus.css");
@import url("mouseinfopanel.css");
@import url("units.css");
@import url("unitdatatable.css");
@import url("unitcontrolpanel.css");
@import url("unitinfopanel.css");
@import url("popup.css");
* {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
html {
font-family: 'Open Sans', sans-serif;
}
body {
display:grid;
margin: 0;
padding: 0;
}
html,
body {
height: 100%;
width: 100%;
}
a {
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
button {
background-color: var(--background-steel);
border: 1px solid var(--background-steel);
border-radius: var(--border-radius-sm);
color: whitesmoke;
cursor: pointer;
font-weight: var(--font-weight-bolder);
padding: 6px;
}
button:hover {
background-color: var(--background-hover);
}
button[disabled="disabled"] {
color: var(--highlight-color);
cursor: not-allowed;
}
form {
margin: 0;
padding: 0;
}
form > div {
margin: 20px 0;
}
.pill {
background-color: var( --background-dark-steel );
border-radius: var(--border-radius-sm);
padding: 4px 8px;
width: fit-content;
}
.ol-scrollable::-webkit-scrollbar {
width: 10px;
}
.ol-scrollable::-webkit-scrollbar-track {
background-color: transparent;
border-radius: 100px;
}
.ol-scrollable::-webkit-scrollbar-thumb {
background-color: white;
border-radius: 100px;
opacity: 0.8;
margin-top: 10px;
}
.ol-panel {
background-color: var(--background-steel);
border-radius: 15px;
box-shadow: 0px 2px 5px #000A;
color: white;
font-size: 12px;
height: fit-content;
padding: 10px;
width: fit-content;
}
.ol-panel hr {
background-color: var(--secondary-light-grey);
border: none;
height: 1px;
margin: 20px 0;
width: 100%;
}
.ol-panel-padding-lg {
padding: 24px 30px;
}
.ol-select-container {
width: 100%;
}
.ol-select {
position: relative;
color: var(--nav-text);
}
.ol-select>.ol-select-value {
align-content: center;
box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
cursor: pointer;
display: flex;
justify-content: left;
text-align: center;
white-space: nowrap;
width: 100%;
}
.ol-select:not(.ol-select-image)>.ol-select-value {
align-items: center;
background-color: var(--background-grey);
border-radius: var(--border-radius-sm);
padding: 1em 30px 1em 20px;
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
}
.ol-select.narrow:not(.ol-select-image)>.ol-select-value {
opacity: .9;
padding:4px 30px 4px 15px;
}
.ol-select:not(.ol-select-image)>.ol-select-value svg {
margin-right: 10px;
}
.ol-select:not(.ol-select-image)>.ol-select-value:after {
position: absolute;
content: url("/themes/olympus/images/chevron-down.svg");
right: 10px;
}
.ol-select>.ol-select-options {
border-radius: var( --border-radius-md );
overflow: hidden;
position: absolute;
max-height: 0;
translate: 0 -2px;
z-index: 1000;
}
.ol-select.ol-select-image>.ol-select-options {
position: absolute;
}
.ol-select.is-open > .ol-select-options {
max-height: 382px;
overflow: visible;
overflow-y: auto;
padding: 8px 0;
min-width: 100%;
z-index:9999;
}
.ol-select.is-open[data-position="top"] > .ol-select-options {
top:0;
translate:0 -100%;
}
.ol-select>.ol-select-options > div {
background-color: var(--background-grey);
box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
display: flex;
justify-content: left;
padding: 4px 25px;
width: 100%;
}
.ol-select>.ol-select-options>div:first-of-type {
border-top-left-radius: var(--border-radius-md);
border-top-right-radius: var(--border-radius-md);
padding-top: 16px;
}
.ol-select>.ol-select-options>div:last-of-type {
border-bottom-left-radius: var(--border-radius-md);
border-bottom-right-radius: var(--border-radius-md);
padding-bottom: 16px;
}
.ol-select>.ol-select-options div hr {
background-color: white;
height: 1px;
width: 100%;
}
.ol-select>.ol-select-options > div a, .ol-select>.ol-select-options > div button {
background-color: transparent;
border: none;
border-radius: 0;
color: white;
display:block;
font-size: 14px;
font-weight: normal;
padding: 6px 2px;
text-align: left;
white-space: nowrap;
width: 100%;
}
.ol-select>.ol-select-options > div a:hover, .ol-select>.ol-select-options > div button:hover {
text-decoration: underline;
}
.ol-panel-list {
border-radius: var(--border-radius-sm);
display: flex;
flex-direction: column;
height: fit-content;
row-gap: 5px;
text-align: center;
width: fit-content;
}
.ol-panel-list .list-item {
border-radius: var(--border-radius-md);
display: flex;
justify-content: space-between;
padding: 6px 10px;
}
.ol-panel-list.sortable>.sortable-item {
align-items: center;
column-gap: 5px;
display: flex;
flex-direction: row;
}
.ol-panel-list.sortable>.sortable-item>.handle {
cursor: grab;
filter: invert(100);
}
.ol-panel-list.sortable>.sortable-item>.handle img {
max-width: 16px;
}
.ol-panel-board {
display: flex;
flex-direction: row;
justify-content: space-evenly;
}
.ol-panel-board > .panel-section {
border-right: 1px solid #555;
margin:10px 0;
padding:0 30px;
}
.ol-panel-board > .panel-section:first-child {
padding-left:20px;
}
.ol-panel-board > .panel-section:last-child {
padding-right:20px;
}
.ol-panel-board > .panel-section:last-of-type {
border-right-width: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
margin: 0px;
}
h1 {
font-size: 36px;
font-weight: 800;
}
h2 {
font-size: 24px;
font-weight: bold;
}
h3 {
font-size: 18px;
font-weight: bold;
}
h4 {
font-size: 14px;
font-weight: normal;
}
button.ol-button-warning {
border: 1px solid var(--primary-red);
color: var(--primary-red);
}
nav.ol-panel {
column-gap: 20px;
display: flex;
flex-direction: row;
height: 58px;
}
nav.ol-panel> :last-child {
margin-right: 5px;
}
.ol-panel .ol-group {
border-radius: var(--border-radius-sm);
column-gap: 10px;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
row-gap: 4px;
align-items: center;
}
.ol-group-header {
text-align: center;
width: 100%;
}
.ol-panel .ol-group.wrap {
flex-wrap: wrap;
}
.ol-panel .ol-group-button-toggle {
align-items: center;
column-gap: 15px;
display: flex;
flex-wrap: nowrap;
white-space: nowrap;
width: fit-content;
}
.ol-panel .ol-group-button-toggle button {
background-position: 5px 50%;
background-repeat: no-repeat;
border: 0;
display:flex;
justify-items: left;
text-indent: 5px;
}
.ol-panel .ol-group-button-toggle button::before {
background-image: url("/images/icons/square-check-solid.svg");
background-repeat: no-repeat;
content: "";
filter: invert(100%);
-webkit-filter: invert(100%);
height:16px;
width:16px;
}
.ol-panel .ol-group-button-toggle button.off::before {
background-image: url("/images/icons/square-regular.svg");
}
.highlight-primary {
background-color: var(--secondary-light-grey);
}
.highlight-coalition, .highlight-neutral {
background-color: var(--primary-grey);
color: var(--secondary-gunmetal-grey)
}
.highlight-coalition[data-coalition="blue"], .highlight-bluefor {
background-color: var(--primary-blue);
color: white;
}
.highlight-coalition[data-coalition="red"], .highlight-redfor {
background-color: var(--primary-red);
color: white;
}
.accent-green {
color: var(--accent-green);
font-weight: var(--font-weight-bolder);
}
.accent-light-blue {
color: var(--accent-light-blue);
font-weight: var(--font-weight-bolder);
}
.accent-bluefor {
color: var(--primary-blue);
font-weight: var(--font-weight-bolder);
}
.accent-redfor {
color: var(--primary-red);
font-weight: var(--font-weight-bolder);
}
.accent-neutral {
color: var(--primary-grey);
font-weight: var(--font-weight-bolder);
}
.hide {
display: none !important;
}
.icon-small {
width: 20px;
padding: 2px;
filter: invert(100%);
}
.ol-data-grid {
display: flex;
flex-direction: column;
}
.slider-container {
width: 100%;
}
.slider {
width: 100%;
-webkit-appearance: none;
appearance: none;
height: 2px;
background: #d3d3d3;
outline: none;
opacity: 0.7;
-webkit-transition: .2s;
transition: opacity .2s;
margin-top: 10px;
margin-bottom: 10px;
}
.slider:hover {
opacity: 1;
}
.slider::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 20px;
height: 20px;
background: gray;
cursor: pointer;
border-radius: 999px;
}
.active .slider::-webkit-slider-thumb {
background: #5ca7ff;
}
.slider::-moz-range-thumb {
width: 20px;
height: 20px;
background: gray;
cursor: pointer;
border-radius: 999px;
}
.active .slider::-moz-range-thumb {
background: #5ca7ff;
}
.main-logo {
width: 40px;
height: 40px;
}
.ol-measure-box {
position: absolute;
padding-left: 0.5em;
padding-right: 0.5em;
padding-top: 0.2em;
padding-bottom: 0.2em;
background-color: var(--background-steel);
border-radius: 999px;
width: fit-content;
height: fit-content;
text-align: center;
color: var(--primary-grey);
font-size: 12px;
z-index: 2000;
font-weight: var(--font-weight-bolder);
}
.ol-sortable .handle {
background-image: url( "/images/icons/grip-lines-solid.svg" );
cursor:ns-resize;
filter:invert();
height:12px;
width:12px;
}
#unit-selection {
display: flex;
flex-direction: column;
}
#unit-selection #unit-identification {
align-items: center;
display: flex;
margin-bottom: 11px;
}
#unit-selection #unit-identification [data-object|="unit"] {
height: 28px;
margin-right: 6px;
width: 28px;
}
#unit-selection #unit-identification [data-object|="unit"] .unit-marker {
background-size: 28px 28px;
height: 28px;
width: 28px;
}
#unit-visibility-control {
align-items: center;
}
#unit-visibility-control button {
border: none;
height: 32px;
width: 32px;
}
#unit-visibility-control-aircraft {
background-image: var(--visibility-control-aircraft-visible-url);
}
body[data-hide-aircraft] #unit-visibility-control-aircraft {
background-image: var(--visibility-control-aircraft-hidden-url);
}
#unit-visibility-control-groundunit {
background-image: var(--visibility-control-groundunit-visible-url);
}
body[data-hide-groundunit] #unit-visibility-control-groundunit {
background-image: var(--visibility-control-groundunit-hidden-url);
}
#unit-visibility-control-sam {
background-image: var(--visibility-control-sam-visible-url);
}
body[data-hide-sam] #unit-visibility-control-sam {
background-image: var(--visibility-control-sam-hidden-url);
}
#unit-visibility-control-threat {
background-image: var(--visibility-control-threat-visible-url);
}
body[data-hide-threat] #unit-visibility-control-threat {
background-image: var(--visibility-control-threat-hidden-url);
}
#unit-visibility-control-navyunit {
background-image: var(--visibility-control-navyunit-visible-url);
}
body[data-hide-navyunit] #unit-visibility-control-navyunit {
background-image: var(--visibility-control-navyunit-hidden-url);
}
#atc-navbar-control {
align-items: center;
display:flex;
flex-direction: column;
}
#atc-navbar-control button {
background:#ffffff20;
border-radius: var( --border-radius-sm );
padding:4px;
}
.toggle {
--width: 40px;
--height: calc(var(--width) / 2);
--border-radius: calc(var(--height) / 2);
display: inline-block;
cursor: pointer;
}
.toggle-input {
display: none;
}
.toggle-fill {
position: relative;
width: var(--width);
height: var(--height);
border-radius: var(--border-radius);
transition: background-color 0.2s;
}
.toggle-fill::after {
content: "";
position: absolute;
top: 2;
left: 2;
height: calc(var(--height) - 4px);
width: calc(var(--height) - 4px);
background-color: #ffffff;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
border-radius: var(--border-radius);
transition: transform 0.2s;
}
.toggle-input:checked ~ .toggle-fill::after {
transform: translateX(var(--height));
}
#roe-buttons-container button {
background-color:transparent;
border:1px solid var( --accent-light-blue );
}
#roe-buttons-container button.selected, #reaction-to-threat-buttons-container button.selected {
background-color: white;
border-color: white;
}
#roe-buttons-container button::before, #reaction-to-threat-buttons-container button::before {
background-position:center;
background-repeat: no-repeat;
content: "";
display:block;
height:24px;
width:24px;
}
#roe-buttons-container button[title="Hold"]::before {
background-image: url( "/themes/olympus/images/icons_roe_stop_light.svg");
}
#roe-buttons-container button[title="Hold"].selected::before {
background-image: url( "/themes/olympus/images/icons_roe_stop_dark.svg");
}
/**/
#roe-buttons-container button[title="Return"]::before {
background-image: url( "/themes/olympus/images/icons_roe_defend_light.svg");
}
#roe-buttons-container button[title="Return"].selected::before {
background-image: url( "/themes/olympus/images/icons_roe_defend_dark.svg");
}
/**/
#roe-buttons-container button[title="Designated"]::before {
background-image: url( "/themes/olympus/images/icons_roe_target_light.svg");
}
#roe-buttons-container button[title="Designated"].selected::before {
background-image: url( "/themes/olympus/images/icons_roe_target_dark.svg");
}
/**/
#roe-buttons-container button[title="Free"]::before {
background-image: url( "/themes/olympus/images/icons_roe_free_light.svg");
}
#roe-buttons-container button[title="Free"].selected::before {
background-image: url( "/themes/olympus/images/icons_roe_free_dark.svg");
}
/****************************************************************************************/
#reaction-to-threat-buttons-container button[title="None"]::before {
background-image: url( "/themes/olympus/images/icons_threat_nothing_light.svg");
}
#reaction-to-threat-buttons-container button[title="None"].selected::before {
background-image: url( "/themes/olympus/images/icons_threat_nothing_dark.svg");
}
/**/
#reaction-to-threat-buttons-container button[title="Passive"]::before {
background-image: url( "/themes/olympus/images/icons_threat_cms_light.svg");
}
#reaction-to-threat-buttons-container button[title="Passive"].selected::before {
background-image: url( "/themes/olympus/images/icons_threat_cms_dark.svg");
}
/**/
#reaction-to-threat-buttons-container button[title="Evade"]::before {
background-image: url( "/themes/olympus/images/icons_threat_defend_light.svg");
}
#reaction-to-threat-buttons-container button[title="Evade"].selected::before {
background-image: url( "/themes/olympus/images/icons_threat_defend_dark.svg");
}
/****************************************************************************************/
#splash-screen {
background-image: url( "/images/splash/splash_pic_ship.png" );
background-position:100% 50%;
background-size:320px;
border-radius: var( --border-radius-lg );
display:none;
overflow: hidden;
width:700px;
}
#splash-content {
background-color: var( --background-steel );
display: flex;
flex-direction: column;
padding:20px;
position:relative;
row-gap:10px;
width:55%;
z-index:10;
}
#splash-content::after {
background-color: var( --background-steel );
content: "";
display: block;
height:250px;
position: absolute;
right:0;
top:0;
transform: rotate(-23deg);
transform-origin: top right;
width:200px;
z-index: -1;
}
#splash-content #app-summary {
background-image: url( "/images/olympus-500x500.png" );
background-position: 0 50%;
background-repeat: no-repeat;
background-size:75px 75px;
content: "";
display:flex;
flex-direction: column;
justify-content: space-between;
min-height: 75px;
text-indent: 85px;
}
#splash-content #app-summary > * {
height:fit-content;
line-height: 25px;
white-space: nowrap;
width:fit-content;
}
#splash-content .app-version {
font-size:11px;
}
#splash-content #legal-stuff h4 {
text-transform:uppercase;
}
#splash-content #legal-stuff p {
font-size:10px;
}
.feature-splashScreen #splash-screen {
display:flex;
}