display: none;
}
-#dialogArea,
-.overlayArea {
+.hidden {
+ display: none;
+}
+
+.debugHide {
+ display: none;
+}
+
+/* Main window UI areas */
+#map, #track {
+ position: fixed;
+ border: 0;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+}
+
+#map {
+ z-index: 1;
+}
+
+#track {
+ z-index: 3;
+}
+
+.autoFade {
position: absolute;
z-index: 5;
transition-property: opacity;
transition-duration: .2s;
}
-#dialogArea.hidden,
-.overlayArea.hidden {
+.autoFade.hidden {
opacity: 0;
transition-duration: 1s;
-}
-
-#dialogArea:-moz-system-metric(touch-enabled),
-.overlayArea:-moz-system-metric(touch-enabled),
-.menuDrawer:-moz-system-metric(touch-enabled) {
- font-size: 3mozmm;
-}
-
-#dialogArea input[type="button"],
-#dialogArea input[type="text"],
-#dialogArea select,
-.overlayArea input[type="button"],
-.overlayArea select,
-.menuDrawer input[type="button"],
-.menuDrawer select {
- font-size: inherit;
+ display: block;
}
#menuArea {
text-align: center;
}
-#zoomArea > input[type="button"],
-#fullscreenArea > input[type="button"],
-#trackButton,
-#settingsButton {
+.autoFade > input[type="button"],
+.autoFade > .controlButton {
font-size: 1.2em;
font-weight: bold;
width: 2em;
background-image: radial-gradient(circle 1.5em, #FFFFFF, transparent);
color: #0000FF;
border: none;
+ padding: 0;
+ margin: 0;
}
#zoomArea > input[type="button"] {
border: 2px solid #0000FF;
}
-#zoomArea > input[type="button"]:hover,
-#fullscreenArea > input[type="button"]:hover,
-#trackButton:hover,
-#settingsButton:hover {
+.autoFade > input[type="button"]:hover,
+.autoFade > .controlButton:hover {
background-color: rgba(255, 255, 255, .8);
}
-#zoomArea > input[type="button"]:active,
-#fullscreenArea > input[type="button"]:active,
-#trackButton:active,
-#settingsButton:active {
+.autoFade > input[type="button"]:active,
+.autoFade > .controlButton:active {
background-color: rgba(255, 255, 127, .8);
}
-#zoomArea > input[type="button"]:focus,
-#fullscreenArea > input[type="button"]:focus,
-#trackButton:focus,
-#settingsButton:focus {
+.autoFade > input[type="button"]:focus,
+.autoFade > .controlButton:focus {
background-color: rgba(255, 255, 255, .5);
}
margin: 2px 0;
}
+#action {
+ position: absolute;
+ bottom: 5px;
+ left: .5em;
+ margin: 0;
+ z-index: 3;
+ background-color: rgba(255, 255, 255, .8);
+ border-radius: 3px;
+ padding: 0 3px;
+}
+
+#actionimg {
+ vertical-align: text-bottom;
+}
+
+#copyright {
+ bottom: 5px;
+ right: .5em;
+ margin: 0;
+ font-size: .8em;
+ opacity: .66;
+ z-index: 2;
+ background-color: rgba(255, 255, 255, 1);
+ border-radius: 3px;
+ padding: 0 3px;
+}
+
+#copyright.hidden {
+ opacity: 0;
+ display: block;
+}
+
+.overlayArea:-moz-system-metric(touch-enabled),
+.menuDrawer:-moz-system-metric(touch-enabled) {
+ font-size: 3mozmm;
+}
+
+.overlayArea input[type="button"],
+.overlayArea button,
+.overlayArea select,
+.menuDrawer input[type="button"],
+.menuDrawer button,
+.menuDrawer input[type="text"],
+.menuDrawer input[type="number"],
+.menuDrawer select {
+ font-size: inherit;
+}
+
+/* Menu Drawers */
.menuDrawer {
position: absolute;
top: 0;
bottom: 0;
+ overflow: auto;
transform: translateX(calc(-40ch - 1ch)); /* account for padding */
width: 40ch;
max-width: 95%; /* make sure we don't overflow the screen */
- background-color: rgba(15, 15, 15, .9);
- color: #CCCCCC;
border: 0;
padding: 0 .5ch; /* account for legend */
margin: 0;
}
}
-.menuDrawer > p {
+.menuDrawer p {
margin: .5em 0;
}
font-size: .75em;
}
+.dialogHelp {
+ margin: .5em 0;
+ font-size: .8em;
+ opacity: .66;
+}
+
+#trackData {
+ margin: 0;
+}
+
+#trackDialogArea {
+ border-top: 2px solid;
+ border-bottom: 2px solid;
+ padding: 3px 0;
+}
+
+#uploadDesc {
+ max-width: 95%;
+}
+
+/* Secondary UI: menu drawers, full screen overlays, etc. */
+.secondaryUI {
+ background-color: rgba(15, 15, 15, .9);
+ color: #CCCCCC;
+}
+
/* Custom checkbox design */
-.menuDrawer input[type="checkbox"] {
+.secondaryUI input[type="checkbox"] {
display: none;
}
-.menuDrawer input[type="checkbox"] + label:before {
+.secondaryUI input[type="checkbox"] + label:before {
content: '\00A0'; /* non-breaking space */
display: inline-block;
width: 1.2em;
border-radius: 3px;
}
-.menuDrawer input[type="checkbox"]:hover + label:before {
+.secondaryUI input[type="checkbox"]:hover + label:before {
background-color: rgba(204, 204, 204, .4);
border: 1px solid #FFFFFF;
}
-.menuDrawer input[type="checkbox"]:hover + label {
+.secondaryUI input[type="checkbox"]:hover + label {
color: #FFFFFF;
position:relative;
height: 1.2em;
}
-.menuDrawer input[type="checkbox"]:active + label:before {
+.secondaryUI input[type="checkbox"]:active + label:before {
background-color: rgba(204, 204, 255, .3);
border: 1px solid #FFCCAA;
}
-.menuDrawer input[type="checkbox"]:active + label {
+.secondaryUI input[type="checkbox"]:active + label {
color: #FFCCAA;
}
-.menuDrawer input[type="checkbox"]:checked + label:before {
+.secondaryUI input[type="checkbox"]:checked + label:before {
content: '\2714'; /* tick mark */
}
/* Custom button design */
-.menuDrawer input[type="button"] {
+.secondaryUI input[type="button"],
+.secondaryUI button {
text-align: center;
vertical-align: middle;
background-image: none;
border-radius: 3px;
}
-.menuDrawer input[type="button"]:hover {
+.secondaryUI input[type="button"]:disabled,
+.secondaryUI button:disabled {
+ background-color: rgba(204, 204, 204, .1);
+ color: rgba(204, 204, 204, .5);
+ border: 1px solid rgba(255, 255, 255, .5);
+}
+
+.secondaryUI input[type="button"]:not(:disabled):hover,
+.secondaryUI button:not(:disabled):hover {
background-color: rgba(204, 204, 204, .4);
border: 1px solid #FFFFFF;
}
-.menuDrawer input[type="button"]:active {
+.secondaryUI input[type="button"]:not(:disabled):active,
+.secondaryUI button:not(:disabled):active {
background-color: rgba(204, 204, 255, .3);
color: #FFCCAA;
padding-top: 2px;
}
/* Custom select design */
-.menuDrawer select {
+.secondaryUI select {
text-align: left;
vertical-align: middle;
background-image: none;
border-radius: 3px;
}
-.menuDrawer select:hover {
+.secondaryUI select:hover {
background-color: rgba(204, 204, 204, .4);
border: 1px solid #FFFFFF;
}
-.menuDrawer select:active {
+.secondaryUI select:active {
background-color: rgba(204, 204, 255, .3);
color: #FFCCAA;
}
-.menuDrawer option:checked:not(:hover) {
+.secondaryUI option:checked:not(:hover) {
background-color: rgba(204, 204, 204, .1);
}
-.menuDrawer option:hover {
+.secondaryUI option:hover {
background-color: #CCCCCC;
color: #404040;
}
-#trackData {
- margin: 0;
+/* Custom textbox design */
+.secondaryUI input[type="text"],
+.secondaryUI input[type="number"] {
+ font-size: 1em;
+ vertical-align: middle;
+ background-image: none;
+ background-color: rgba(204, 204, 204, .7);
+ color: #404040;
+ padding: 1px .5em;
+ border: 1px solid #CCCCCC;
+ border-radius: 3px;
}
-#map, #track {
- position: fixed;
- border: 0;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
+.secondaryUI input[type="text"] {
+ text-align: left;
}
-#map {
- z-index: 1;
+.secondaryUI input[type="number"] {
+ text-align: right;
}
-#track {
- z-index: 3;
+.secondaryUI input[type="text"]:disabled,
+.secondaryUI input[type="number"]:disabled {
+ background-color: rgba(204, 204, 204, .1);
+ color: rgba(204, 204, 204, .5);
+ border: 1px solid rgba(255, 255, 255, .5);
}
-#action {
- position: absolute;
- bottom: 5px;
- left: .5em;
- margin: 0;
- z-index: 3;
- background-color: rgba(255, 255, 255, .8);
- border-radius: 3px;
- padding: 0 3px;
+.secondaryUI input[type="text"]:not(:disabled):hover,
+.secondaryUI input[type="number"]:not(:disabled):hover {
+ border: 1px solid #FFFFFF;
}
-#actionimg {
- vertical-align: text-bottom;
+.secondaryUI input[type="text"]:not(:disabled):focus,
+.secondaryUI input[type="number"]:not(:disabled):focus {
+ background-color: rgba(204, 204, 255, .8);
+ border: 1px solid #FFFFFF;
+ color: #202020;
}
-.debugHide {
- display: none;
+/* custom style for paragraphs and links */
+.secondaryUI p.subTitle {
+ margin: .75em 0 .5em;
+ font-weight: bold;
}
-.settingsSubTitle {
- margin: .5em 0 0;
- font-weight: bold;
+.secondaryUI a:link {
+ color: #DDDDDD;
}
-#copyright {
- bottom: 5px;
- right: .5em;
- margin: 0;
- font-size: small;
- opacity: .66;
- z-index: 2;
- background-color: rgba(255, 255, 255, 1);
- border-radius: 3px;
- padding: 0 3px;
+.secondaryUI a:visited {
+ color: #AAAAAA;
}
-#copyright.hidden {
- opacity: 0;
+.secondaryUI a:hover {
+ color: #FFFFFF;
}
+/* dialog area - for loading error and welcome messages */
#dialogArea {
+ position: absolute;
top: 20%;
right: 0;
left: 0;
- width: 30ch;
+ width: 50ch;
max-width: 92%;
z-index: 10;
background-color: rgba(255, 255, 255, .8);
}
#dialogArea.hidden {
- top: -100%;
+ top: -1000%;
+ display: block;
}
.dialogTitle {
font-weight: bold;
}
-.dialogHelp {
- margin: .5em 0;
- font-size: small;
- opacity: .66;
+.dialogButtonLine {
+ text-align: center;
}
-#uploadDesc {
- max-width: 95%;
+/* full screen overlay - library, etc. */
+.fullScreenOverlay {
+ position: absolute;
+ top: 1%;
+ bottom: 1%;
+ right: 1%;
+ left: 1%;
+ z-index: 10;
+ background-color: rgba(15, 15, 15, 1.0);
+ border: 0;
+ margin: auto;
+ padding: .5em;
+ border-radius: 5px;
+}
+
+.fullScreenOverlay.hidden {
+ top: -1000%;
+ bottom: auto;
+ height: 90%;
+ display: block;
+}
+
+.fullScreenOverlay > .closeButtonContainer {
+ position: absolute;
+ top: 0;
+ right: 0;
+ margin: 0;
+ padding: 0.5em;
+ text-align: right;
+}
+/*
+.fullScreenOverlay > .closeButtonContainer > .closeButton {
+ font-size: 2em;
+}
+*/
+
+.fullScreenOverlay p {
+ margin: 0.5em 0;
+}
+
+.fullScreenOverlay > p:first-child {
+ margin-top: 0;
+ /* leave space for close button */
+ margin-right: 1.5em;
+}
+
+#libTrackList {
+ overflow: auto;
+ /* 2em is top/bottom margin, and one line is shown above and below, with .5em margin each */
+ height: calc(100% - 5em);
+}
+
+#libTrackPages {
+ margin-bottom: 0;
}
+/* small screen media adaptations */
@media screen and (max-width: 500px),
screen and (max-height: 500px) {
body {
#copyright {
bottom: 1px;
right: 1px;
- font-size: 8px;
}
}