| /******************************************************************************* |
| * Copyright (c) 2020 Holger Voormann and others. |
| * |
| * This program and the accompanying materials are made |
| * available under the terms of the Eclipse Public License 2.0 |
| * which is available at https://www.eclipse.org/legal/epl-2.0/ |
| * |
| * SPDX-License-Identifier: EPL-2.0 |
| ******************************************************************************* |
| |
| Structure: |
| ____________________________________________ |
| | #h(eader) | |
| |--------------------------------------------| |
| | #m(ain area) | |
| | ________________________________________ | |
| | | | | | | |
| | | #t(oc) | #s(lider) | #c(ontent iframe) | | |
| | |________|___________|___________________| | |
| |--------------------------------------------| |
| | #f(ooter) | |
| |____________________________________________| |
| |
| *******************************************************************************/ |
| * { |
| border: 0; |
| margin: 0; |
| padding: 0; |
| } |
| input:focus { |
| outline: none; |
| } |
| html, body, #m { |
| height: 100%; |
| overflow: hidden; |
| } |
| body, input, button { |
| font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Lucida Grande", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; |
| font-size: 1rem; |
| color: #222; |
| } |
| body { |
| display: -webkit-flex; |
| display: flex; |
| -webkit-flex-flow: column; |
| flex-flow: column; |
| background: #eef0f3; |
| } |
| a { |
| text-decoration: none; |
| } |
| strong { |
| color: #444; |
| } |
| button { |
| background: transparent; |
| font-size: 1em; |
| cursor: pointer; |
| } |
| #h { |
| padding: 6px 6px 4px; |
| display: flex; |
| } |
| #m { |
| width: 100%; |
| height: 100%; |
| padding: 2px 0 0; |
| -webkit-flex: 0 1 auto; |
| flex: 0 1 auto; |
| display: -webkit-flex; |
| display: flex; |
| } |
| #t { |
| width: 400px; |
| overflow: auto; |
| scroll-behavior: smooth; |
| } |
| #t.hide { |
| -ms-overflow-style: -ms-autohiding-scrollbar; /* IE and Edge: avoid that the scrollbar is shown even when TOC is hidden */ |
| } |
| #t .tree { |
| padding-top: 6px; |
| } |
| #s { |
| width: 12px; |
| z-index: 2; |
| cursor: e-resize; |
| } |
| #c, .c { |
| -webkit-flex: auto; |
| flex: auto; |
| } |
| .c { |
| overflow: auto; |
| flex-basis: 0; |
| } |
| #t, #c, .c { |
| height: 1px; |
| min-height: 100%; |
| max-height: 100%; |
| } |
| #t, #c, .c, .qf, #a { |
| background: #fff; |
| box-shadow: 0 1px 3px rgba(0,0,0,0.15); |
| } |
| |
| #f { display: none; } |
| |
| /*** main toolbar (in the upper left) ***/ |
| .y { |
| display: flex; |
| margin-right: 6px; |
| } |
| |
| /*** button ***/ |
| .b { |
| display: inline-block; |
| padding: 8px; |
| font-size: 0; |
| color: #555; |
| background: transparent; |
| box-sizing: content-box; |
| height: 20px; |
| width: 20px; |
| } |
| .b:hover, #h .q0 > .b:hover { |
| background: #d7d9db; |
| border-radius: 5px; |
| } |
| |
| /*** search field (area) ***/ |
| .q0 { |
| flex: auto; |
| display: flex; |
| } |
| .q1 { |
| position: relative; |
| max-width: 640px; |
| flex: auto; |
| } |
| .q, .qf, .qm { |
| display: flex; |
| border-radius: 8px; |
| background: #fff; |
| } |
| .q { |
| border: 1px solid #fff; |
| box-shadow: 0 1px 1px rgba(0,0,0,0.05); |
| } |
| .qf, .qm { |
| border: 1px solid #37e; |
| box-shadow: 0 1px 3px rgba(119,153,238,0.4); |
| } |
| .qm { |
| border-radius: 8px 8px 2px 0; |
| border-bottom-color: rgba(255,255,255,0); |
| } |
| .q0 .b:hover { |
| background: none; |
| } |
| .qf.qa .b, .qm.qa .b, .q.qa .b:hover, #b .a .b, #b .a .b:hover { |
| color: #fff; |
| background: #37e; |
| margin: 0 -0.5px 0 0; /* workaround for Microsoft Edge to avoid white between blue button and blue border */ |
| } |
| .qf.qa .b { |
| border-radius: 0 7px 7px 0; |
| } |
| .qm.qa .b { |
| border-radius: 0 7px 0 0; |
| } |
| .q .b:hover { |
| background: #fff; |
| cursor: default; |
| } |
| .q0 .b { |
| border-radius: 7px; |
| margin: 0; |
| padding: 7.8px; |
| } |
| .q .b, .qf .b { |
| cursor: default; |
| } |
| .q2 { |
| display: flex; |
| flex: auto; |
| } |
| .q2, .q1 .b { |
| z-index: 2; |
| } |
| #q, .qh { |
| width: 100%; /* needed for some mobiles where "flex: auto" is not enough or does not work */ |
| flex: auto; |
| min-width: 24px; |
| border: 0; |
| margin: 2px 0; |
| font-size: 1rem; |
| background: #fff; |
| } |
| .qh { |
| margin: 0; |
| color: #ddd; |
| } |
| #q::placeholder { |
| color: #999; |
| opacity: 1; |
| font-style: italic; |
| } |
| .u { |
| position: relative; |
| } |
| |
| /*** search proposals (.p) and scopes button (.s) with drop-down (.u) ***/ |
| .c { |
| padding: 6px; |
| } |
| .r0 { |
| margin: 1em; |
| padding: 6px 0; |
| } |
| .j, .j li, .j a, .j button { |
| list-style: none outside none; |
| display: block; |
| } |
| .j { |
| overflow-wrap: anywhere; |
| } |
| .p a, .p button, .u li { |
| padding: 0.5em 9px; |
| box-sizing: border-box; |
| width: 100%; |
| text-align: left; |
| cursor: pointer; |
| } |
| .p .w { |
| float: right; |
| } |
| .p .n { |
| clear: both; |
| margin-top: 3px; |
| } |
| .p .v { |
| display: inline-block; |
| } |
| #r .j li a, #b li a, .ba { |
| max-width: 640px; |
| margin: 0 0 0.25em 10px; |
| padding: 6px; |
| border-radius: 4px; |
| } |
| .j .z a, .j .z button, .j a:focus, .j button:focus, .u .z { |
| background: #e8f2fe; |
| outline: none; |
| } |
| .j, .j a, #r .t, #b a { |
| color: #222; |
| } |
| .j a .w, #r .tree .l, #r .t .tl { |
| color: #062; |
| } |
| #r .l { |
| cursor: pointer; |
| } |
| .w, .n { |
| font-size: 85%; |
| } |
| #r .w, #r .n { |
| margin-top: 3px; |
| } |
| .p, .u { |
| position: absolute; |
| float: left; |
| left: 0; |
| margin-top: -1px; |
| top: 100%; |
| width: 100%; |
| padding: 0; |
| z-index: 3; |
| background: rgba(0, 0, 0, 0); |
| } |
| .u { |
| margin: -4px 0 0 3px; |
| width: auto; |
| } |
| .s0 { |
| position: relative; |
| z-index: 5; |
| } |
| .s { |
| background: #f2f4f7; |
| box-sizing: content-box; |
| display: flex; |
| margin: 3px 6px 3px 3px; |
| padding: 0 0 0 8px; |
| align-items: center; |
| border-radius: 5px; |
| font-size: 1rem; |
| white-space: nowrap; |
| } |
| .s span { |
| max-width: 240px; |
| overflow: hidden; |
| } |
| .s, .d, .de { |
| color: #999; |
| } |
| .qf .s, .qm .s, .s:hover .d, .s:hover .de { |
| color: #222; |
| } |
| .s .d, .s .de { |
| display: inline-block; |
| transform: rotate(90deg); |
| margin-left: -6px; |
| margin-right: 6px; |
| margin: 0 2px 0 -4px; |
| } |
| .s .de { |
| margin: 0 6px 0 -6px; |
| } |
| .p ol, .u ul { |
| display: block; |
| padding: 0; |
| margin: 0; |
| background: #fff; |
| border: 1px solid #37e; |
| border-top: none; |
| border-radius: 0 0 7px 7px; |
| box-shadow: 0 3px 4px rgba(0, 0, 0, 0.2); |
| overflow: hidden; |
| } |
| .s, .u ul { |
| border: 1px solid #edeff2; /* -2 V of background */ |
| } |
| .u li { |
| white-space: nowrap; |
| padding-left: 36px; |
| } |
| .u li.x, .u li.y { |
| padding-left: 9px; |
| } |
| .u li.l { |
| border-top: 1px solid #edeff2; |
| } |
| .u li.x:before { |
| margin-right: 6px; |
| } |
| .p .f { |
| display: none; |
| position: absolute; |
| top: 0; |
| left: 100%; |
| margin-left: -1px; |
| height: 100%; |
| min-height: 42em; |
| width: 100%; |
| background: #ffffff; |
| border: 1px solid #999999; |
| box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); |
| z-index: 5; |
| } |
| .p .z .f { |
| display: block; |
| z-index: 5; |
| } |
| .count { |
| display: inline-block; |
| background: #eee; |
| border-radius: 2em; |
| color: #666; |
| font-size: 0.8em; |
| font-weight: bold; |
| line-height: 1; |
| margin: 0; |
| min-width: 1em; |
| padding: 3px 7px 4px 7px; |
| position: relative; |
| text-align: center; |
| vertical-align: top; |
| } |
| #r .tree { |
| margin-bottom: 0.75em; |
| } |
| .tree input { |
| margin-right: 0.5em; |
| } |
| |
| #h .q0 > .b { |
| margin-left: 6px; |
| } |
| |
| /*** bookmarks (#b) and scopes (#o) ***/ |
| .g { |
| margin: 0 0 0.5em 10px; |
| font-weight: bold; |
| } |
| #b .b, #o .b { |
| width: auto; |
| font-size: 1em; |
| font-weight: bold; |
| background: #f2f4f7; |
| border: 1px solid #edeff2; |
| border-radius: 5px; |
| margin: 0.5em -12px 0 18px; |
| color: #999; |
| } |
| #b .b:hover, #o .b:hover { |
| color: #222; |
| } |
| #b .br:hover, #o .br:hover { |
| color: #fff; |
| background-color: #c11; |
| } |
| #b .bc, #o .bc { |
| color: #555; |
| background: none; |
| border: none; |
| margin: 1em 0 2px 2em; |
| float: right; |
| } |
| #b .bc:hover, #o .bc:hover { |
| background: #d7d9db; |
| } |
| #b li .b { |
| margin: 0; |
| } |
| #o li .b { |
| margin: 1px; |
| } |
| #b input, #o .a input { |
| width: 320px; |
| } |
| #b .br, #o .br { |
| color: #fff; |
| background: #e33; |
| } |
| #b li .br, #o li .b { |
| padding: 4px 8px; |
| } |
| #b .a .b { |
| border: none; |
| border-radius: 0 5px 5px 0; |
| } |
| #b li, #o li { |
| margin: 0 0 0 18px; |
| list-style: none; |
| } |
| #b li a, .ba { |
| display: inline-flex; |
| align-items: center; |
| margin: 0; |
| padding: 0 3px; |
| } |
| #b li a:hover, .ba:hover { |
| background-color: #e8f2fe; |
| } |
| #b li a span, .ba { |
| padding: 3px; |
| } |
| .c .a { |
| border: 1px solid #37e; |
| border-radius: 8px; |
| margin: 1em 0 1em 16px; |
| display: inline-flex; |
| min-height: 36px; |
| align-items: center; |
| } |
| #o div.g { |
| margin: 1em 0 0.5em 10px; |
| } |
| .c .tree { |
| padding: 0 0 8px 0; |
| } |
| #b input, #o .a input { |
| margin: 3px 0.5em; |
| } |
| |
| /*** menu ***/ |
| #a { |
| background: #eef0f3; |
| height: 100%; |
| width: 0; |
| position: fixed; |
| z-index: 9; |
| top: 0; |
| right: 0; |
| overflow-x: hidden; |
| transition: all 0.25s ease-in; |
| border-left: #ddd solid 1px; |
| display: flex; |
| flex-direction: column; |
| } |
| .e { |
| text-align: right; |
| padding: 6px; |
| } |
| #a > .b { |
| width: auto; |
| height: auto; |
| font-size: 1em; |
| margin: 3px 6px; |
| color: #222; |
| text-align: left; |
| padding-left: 40px; /* = 8 + 20 + 12 */ |
| } |
| #af { |
| margin: 3px 6px; |
| } |
| #af span { |
| display: inline-block; |
| padding: 8px 8px 8px 40px; |
| } |
| #af .b { |
| font-size: 1rem; |
| } |
| #a > #ap.b, #a > #app.b { |
| padding-left: 8px; |
| } |
| #a > .b:hover { |
| color: #111; |
| } |
| #a > #ah { |
| padding-left: 40px; |
| } |
| #a > #ah.x { |
| padding-left: 6px; |
| } |
| #ah.x:before, #ap:before, #app:before { |
| display: inline-block; |
| vertical-align: bottom; |
| font-size: 0; |
| width: 20px; |
| height: 20px; |
| margin: 0 12px 0 0; |
| } |
| #ah.x:before, .u li.x:before { |
| content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' focusable='false' role='presentation'%3E%3Cpath d='M 18.720152,3.3629316 C 18.060084,2.7820531 17.056888,2.8348761 16.47601,3.4949448 L 7.7898314,13.157953 3.4335592,8.9600604 C 2.7999482,8.3528147 1.7966621,8.3791818 1.1894164,9.0128871 0.58217173,9.6465896 0.60853792,10.649785 1.2422432,11.257031 l 5.5443048,5.333102 c 0.2903944,0.290393 0.6864358,0.448864 1.1088434,0.448864 h 0.052827 c 0.4224085,-0.02636 0.8448161,-0.211204 1.1088434,-0.528055 L 18.825715,5.6334442 C 19.432961,4.9470093 19.380137,3.9438138 18.720159,3.3629353 Z' fill='%2354595d'/%3E%3C/svg%3E"); |
| |
| /* required for IE: */ |
| display: inline-block; |
| width: 20px; |
| |
| } |
| #ap:before, #app:before { |
| content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' focusable='false' role='presentation'%3E%3Cpath d='m 6.1536984,14.617279 v 1.536358 h 7.6920456 v -1.536358 z m 0,-2.564015 v 1.536357 h 7.6920456 v -1.536357 z m -4.615227,1.536357 h 1.538409 v 4.10345 c -0.0051,1.246112 0.281016,1.537384 1.538409,1.537384 H 15.384153 c 1.257393,0 1.538409,-0.231787 1.538409,-1.537384 v -4.10345 h 1.538409 c 1.307648,0.02051 1.553281,-0.270247 1.538409,-1.537383 V 6.411404 c 0,-1.2050867 -0.194865,-1.5394343 -1.538409,-1.5394343 H 16.922562 V 2.30898 C 16.937433,1.0423563 16.691801,0.76954505 15.384153,0.76954505 H 4.6152894 c -1.230727,0 -1.543537,0.29332335 -1.538409,1.53943495 v 2.5629897 h -1.538409 c -1.323032,0 -1.538409999868,0.2881953 -1.538409999868,1.5394343 v 5.640834 C -0.0050386,13.298349 0.3077434,13.610134 1.5384714,13.589621 Z M 15.384153,17.692046 H 4.6152894 v -6.66644 H 15.384153 Z m 0.96407,-9.485831 c 0,-0.461523 0.369218,-0.830228 0.830741,-0.830228 0.461522,0 0.830741,0.368705 0.830741,0.830228 0,0.461523 -0.369219,0.830741 -0.830741,0.830741 -0.461523,0 -0.830741,-0.369218 -0.830741,-0.830741 z M 4.6152894,2.3079544 H 15.384153 V 4.8740209 H 4.6152894 Z' fill='%2354595d'/%3E%3C/svg%3E"); |
| } |
| .ht { |
| background: #ff6; |
| } |
| |
| /*** tree ***/ |
| .tree ul { |
| margin: 0; |
| padding: 0 0 0 8px; |
| line-height: 1.3; |
| } |
| .tree .closed ul, div#results .closed ul { |
| display: none; |
| } |
| .tree .l { |
| display: inline-block; |
| padding: 2px 6px; |
| border-radius: 4px; |
| color: #222; |
| |
| /* TODO with icons */ |
| margin-left: 32px; |
| |
| /* TODO without icons */ |
| margin-left: 12px; |
| |
| } |
| .tree .l img { |
| |
| /* TODO with icons */ |
| margin: 0 4px -2px -20px; |
| |
| /* TODO without icons */ |
| display: none; |
| |
| } |
| .tree li { |
| padding: 0 0 0 10px; /* indent TOC subitems: 10px => .tree a padding-left: 42px - 10px = 32px */ |
| list-style: none; |
| position: relative; |
| } |
| .tree li.xx > .l, .tree li.x > .l { |
| font-weight: bold; |
| } |
| .tree li.xx > .l { |
| color: #333; |
| } |
| .tree li.x > .l { |
| color: #444; |
| } |
| .tree li.xx > .l { |
| background-color: #eef0f3; |
| } |
| .tree .l, .tree li.xx > .l, .tree li.x > .l, .tree li.xx > .l:hover, .tree li.x > .l:hover { |
| transition: all 0.1s ease; |
| } |
| .tree li > .l:hover { |
| transition: all 0.1s 0.1s ease; |
| background-color: #f4f9ff; |
| } |
| .tree li > .l:focus { |
| background-color: #e8f2fe; |
| outline: none; |
| } |
| .tree .h { |
| /* prevent text selection */ |
| user-select: none; |
| -webkit-user-select: none; |
| -moz-user-select: none; |
| -ms-user-select: none; /* otherwise in MS Edge a blinking text cursor will be shown */ |
| display: inline-block; |
| position: absolute; |
| left: -2px; |
| cursor: pointer; |
| animation: fly-left 3s ease-in forwards; |
| color: #999; |
| transition: transform .25s, color .25s; |
| } |
| .tree .open > .h { |
| color: #333; |
| transform: rotate(90deg); |
| } |
| |
| /*** logo ***/ |
| .k1 /* width: 36..146 */ { |
| /* logo icon */ |
| } |
| .kf /* width: > 146 */ { |
| /* logo full */ |
| } |
| |
| /******************************************************************************* |
| * Mobile */ |
| |
| @media screen and (max-width: 768px) { |
| |
| #t, #s, .i, .k0, .k1, .kf, .ke0, .ke1, .kef { |
| display: none; |
| } |
| #m { |
| overflow: hidden; |
| } |
| #t.show { |
| display: block; |
| min-width: 100%; |
| } |
| .s span { |
| max-width: 60px; |
| overflow: hidden; |
| } |
| |
| } |
| |
| @media screen and (max-height: 360px) { |
| .p ol { |
| overflow-y: auto; |
| max-height: calc(100vh - 38px); |
| -ms-overflow-style: none; |
| scrollbar-width: none; |
| } |
| .p ol::-webkit-scrollbar { |
| display: none; |
| } |
| } |