/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

/* Label/tag denoting the user that shared a connection */
.jdbc-share-tag {

    background: #0095ff;
    padding: 0.25em;

    -moz-border-radius:    0.25em;
    -webkit-border-radius: 0.25em;
    -khtml-border-radius:  0.25em;
    border-radius:         0.25em;

    color: white;
    font-size: 0.75em;
    font-weight: bold;

}
.totp-enroll p,.totp-details{font-size:.8em}.totp-qr-code{text-align:center}.totp-qr-code img{margin:1em;border:1px solid rgba(0,0,0,0.25);box-shadow:1px 1px 2px rgba(0,0,0,0.25);cursor:pointer}h3.totp-details-header{font-size:.8em}h3.totp-details-header::before{content:'▸ '}.totp-details-visible h3.totp-details-header::before{content:'▾ '}.totp-details,.totp-hide-details{display:none}.totp-details-visible .totp-details{display:table}.totp-details-visible .totp-hide-details{display:inline}.totp-details-visible .totp-show-details{display:none}.totp-hide-details,.totp-show-details{color:blue;text-decoration:underline;cursor:pointer;margin:0 .25em;font-weight:normal}.totp-details{margin:0 auto}.totp-details th{padding-right:.25em;text-align:left}.totp-details td{font-family:monospace}.totp-detail{display:inline-block;margin:0 .25em}/* ============================================================
   Jonas Hosting branding
   Base rules apply to both light and dark; theme-specific rules
   are scoped under @media (prefers-color-scheme: dark).
   ============================================================ */

/* ---------- Base (both themes): logo + button + accents ---------- */

.login-ui .login-dialog .logo {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAvgAAAD2CAMAAACUaQOIAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABFUExURQAAAP///////////////////////////////////////////////////////////////////////////////////////1Kdc8IAAAAWdFJOUwAQIDBAUF9gb3B/gI+Qn6CvsL/P3++NaW4cAAAX1ElEQVR42uzd6a7jIAwFYENIaZZhIgf8/o86uppFd3qXEkpTnJzvf6WoPUqNYwLtzjo/TGHhNcYkv6UYV+YwTd51BHAsth/CEuWexMvUI/9wBNbPnGQTnj3SD3oZN3CSMolnZwhAm+4m9CV4cgSghnFzkjpS8LjxgwbGhSRVsbcE0LSM1JdYPAG0qhuTPEsKqPehST3Lc0WU+9AaMyZ5vhRQ7UMuvZX9Z1DxQCscy54YC1341iFj/yYi+vClw8Ye0YdXsyyvwljmwouYWV4JHR54iWuSFxvR14e9uVXuQakPR5NV5aDegYPpk7QijQSwC7NISyJu+nCy2/0fuOnDeap7NPVhRy5KAbR3QLertGomgCcxLO3CGheepGuzzPkr9gRQ3yVJ49DdgfpGaV/A8A4c+qEVCn3YhV1FByQfKrJtL2vfS3jRMtTSNb+sfe9CADU4VblHcwfquIg2SD6cMfdIPpwz90g+nDP3SD6cM/dIPjyiF72QfDhH//7WQAAlrOrc40kWHH5OAdMLUI3RnntMrEGJlrcZ5oqYz4cD7ju5jwlgp9cprG5fePkCVNMpusuiqQm12HiY4KO1A/lWTXU1FrhQyahqQSl3LASQo9fVScHsAlRh48GCLyjzIUNQ1jvHc6zTM52f5rDwmzBP3nW03VXbQ6OTvErZOu+nN4N3+Av7x7hxSfLRGnxHW9h0wOCLI8WMG5Yo/4s895hEMgMn+VoMjrKxujGBNoZ2OF9HG7iR5Svr7GiL+B7TJj/iDdpsjbcWeoRjuSsGS1mu+uZj2jg3QvI5ymXGmPHDZnvkK/kpN2grJx9ZKuZjzRNhbTpo8MXpC75jycG+8BqHfYO/yEcTFepj3cOQg8KJSMkStQXfcfUTwAqmOeoF38onkqESlmWTNND3vMZRYMkzqQp+x0/YclPwqXrBD/V+lUuqfS5mPHDwk9UTfDPLVrMp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");
    width: 190px;
    height: 62px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #0a1f44;
    border-radius: 8px;
    padding: 10px 0;
    box-sizing: content-box;
    margin: 0 auto 1.2em auto;
}

.login-ui .login-dialog .version {
    text-align: center;
    margin-bottom: 1.6em;
}

.login-ui .login-dialog .version .app-name {
    font-size: 1.5em;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.login-ui .login-dialog .version .version-number {
    display: none;
}

.login-ui .login-dialog .version::after {
    content: "Secure Remote Access";
    display: block;
    margin-top: 0.35em;
    font-size: 0.65em;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    opacity: 0.6;
}

.login-ui .login-dialog .buttons {
    position: relative;
    padding-bottom: 2.6em;
}

.login-ui .login-dialog .buttons input[type="submit"] {
    background: #1abc7b;
    border: none;
    color: #06241a;
    font-weight: 700;
    padding: 0.75em;
    border-radius: 8px;
    cursor: pointer;
    font-size: 1em;
    transition: background 0.15s ease;
}

.login-ui .login-dialog .buttons input[type="submit"]:hover {
    background: #15a568;
}

.login-ui .login-fields .labeled-field input:focus {
    border-color: #1abc7b;
    outline: none;
}

.login-ui .login-dialog .buttons::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    display: block;
    width: 92px;
    height: 1.5em;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAEPCAMAAACNy1CQAAAGwWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDIgNzkuMTYwOTI0LCAyMDE3LzA3LzEzLTAxOjA2OjM5ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIxLTA1LTE5VDEyOjExOjQwLTA0OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMi0wMi0xN1QxMTo0NzoyNC0wNTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMi0wMi0xN1QxMTo0NzoyNC0wNTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyMmJmNDc3My0yZTI0LTg5NDktYjY1MS1jY2VmMThkZGI5YjMiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDplMjczYWQyYi0zYmRkLWQ2NGEtOTQ2OS1kYmQ1ZjM1ZDdhNzQiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo1MDk1ODMzYS0yN2RjLWQ2NDMtYmYwNy03MGZkODE3ODVhOGUiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjUwOTU4MzNhLTI3ZGMtZDY0My1iZjA3LTcwZmQ4MTc4NWE4ZSIgc3RFdnQ6d2hlbj0iMjAyMS0wNS0xOVQxMjoxMTo0MC0wNDowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxNTk1N2UzZS04YjEyLTdlNGItODY2ZS1lNGM1MzdjOGQ3ODAiIHN0RXZ0OndoZW49IjIwMjItMDEtMDVUMTE6MzY6MzgtMDU6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MjJiZjQ3NzMtMmUyNC04OTQ5LWI2NTEtY2NlZjE4ZGRiOWIzIiBzdEV2dDp3aGVuPSIyMDIyLTAyLTE3VDExOjQ3OjI0LTA1OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+RabiTAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAP9QTFRFR3BM////////1ODl2uTp+Pn6/P//////////1uHp////////////z9HSnNDq6fHz////////s9vq/f7/////9ff4/////////////f39/v7+/v7+////y9fc/v7/////////zdPX////0NPU////ztPWvM7X7fX5+/390tTV/f3+ztDT/v7+0tTV////1Nfa/f3+////////1Njb////0tTV////ztDR0tTV0NLTsNrp5fL4vOTz////19rey+jz3u71k6Cu1dfY1tna1er0R3BM4e3zvcfQltHpyOfx+fz94unt0+fv5uvu////0tTV+fz87e/u5Obm2tzc/v3/DV6uzgAAAE50Uk5TALB8BwMSH9U+Df5Zjv4tGfbtjPKG/izJ+jJsY7kmwufdRUdYTjUY5efkN3Gn1dCPJpZ2fJ/xcaHGuVPUdWegoMY4r2OvALiRPmKC4keaF8gkMwAAIABJREFUeNrsnQtXoloUgDXQ4pSPJJIemlaCjlNa1pRCQcnyahly1+X//5YLWJMHaEadQQ+wv3JmjZNCeDb7efZOJAAAAAAAAGIAJTwNR7JNb/gkUHBBAOADOjuWC+qryBk2/4qqWhgNS3BdACCRSI0LEocM3ZYNpOum9XDgVHkIigSIN8xQEw1dRx9S8QlCpmmIShZkBIgtgmJLx9cgAxmSDCICxJKsIvJI/z1SIQUXC4id9pDrJppHPixFIsk0XDAgVoxEfQF4tQeXDIiT8+FErOYHGQVQIkBcGFrqYyH50BHiVUiMAPFAZg19UZBuiGBmAXFAMUx9KXgZLh4QdWgNIbScgCDuBa4fEG0Y5Sv5MERVeysUCoomfZE+RMgAHQJEW38ovkvflAqjIeP8gP2HMJQVyffndMiIAFGm4LfsRaVH0e6Fz4y0up+eAU8diC4jn9qSekH4QitkFdbrznMHcBmBiJIVkScBqAi/eoHi9kaQKTFwIYFoOiCqtxBx+JuX9LwlKZBTB6KJ7Els/FJ9vCuRAbghQCwQ3MpgvqAtrfAuK0sFIwuIIMqyiXFP6GuqQqhSNjt+ypZgQxUQCQ/dXb9bmNt3UVzBLFHI9uTBK8cZ1jcrDQq9LFxfIOwKBJcPU5n/pZSG21i8yCJnI7tp93owEeK5gQzFvkCYKXF4iYm0SCyq5HJfDHepr/XFKqBGgPAyMliW+/wSh4u9+vcF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");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #0a1f44;
    border-radius: 4px;
    padding: 6px 0;
    opacity: 0.9;
}

/* ================= Dark mode (follows OS/browser setting) ================= */
@media (prefers-color-scheme: dark) {

    /* ---- Login page ---- */

    div.login-ui {
        background: linear-gradient(160deg, #05070f 0%, #0b1226 55%, #0a1c38 100%) !important;
    }

    .login-ui .login-dialog {
        background: #0f1729;
        border-radius: 14px;
        box-shadow: 0 24px 70px rgba(0, 0, 0, 0.55);
        padding: 2.6em 2.2em 2em 2.2em;
        max-width: 3.5in;
        border: 1px solid rgba(255, 255, 255, 0.06);
    }

    .login-ui .login-dialog .version .app-name {
        color: #ffffff;
    }

    .login-ui .login-dialog .version::after {
        color: rgba(255, 255, 255, 0.45);
    }

    .login-ui .login-fields .labeled-field .field-header {
        color: rgba(255, 255, 255, 0.5);
    }

    .login-ui .login-dialog .login-fields input {
        background: #0a1120;
        border: 1px solid rgba(255, 255, 255, 0.14);
        color: #ffffff;
    }

    .login-ui .login-fields .labeled-field.empty input {
        background: transparent;
    }

    .login-ui .login-fields .labeled-field input:focus {
        background: #0a1120;
    }

    .login-ui .login-dialog p {
        color: rgba(255, 255, 255, 0.75);
    }

    /* ---- Main application shell (post-login) ---- */

    body {
        background: linear-gradient(160deg, #05070f 0%, #0b1226 55%, #0a1c38 100%) !important;
        color: #e6e9f0;
    }

    h1, h2 {
        color: #ffffff !important;
    }

    .header {
        background: rgba(255, 255, 255, 0.04) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
        box-shadow: none !important;
    }

    .header:not(.ng-hide) ~ * .header,
    .header:not(.ng-hide) ~ .header {
        border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    }

    .header .filter input {
        background-color: rgba(255, 255, 255, 0.05) !important;
        border-left: 1px solid rgba(255, 255, 255, 0.12) !important;
        color: #ffffff !important;
    }

    .header .filter input::placeholder {
        color: rgba(255, 255, 255, 0.4);
    }

    .menu-dropdown {
        background: rgba(255, 255, 255, 0.04) !important;
        border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
    }

    .menu-dropdown:hover {
        background: rgba(255, 255, 255, 0.08) !important;
    }

    .menu-dropdown.open,
    .menu-dropdown.open:hover {
        background: rgba(255, 255, 255, 0.12) !important;
    }

    .menu-dropdown .menu-title {
        color: #ffffff !important;
    }

    .menu-dropdown .menu-indicator {
        filter: invert(1) brightness(1.8);
    }

    .menu-dropdown .menu-contents {
        background: #0f1729 !important;
        border-left: 1px solid rgba(255, 255, 255, 0.1) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5) !important;
    }

    .menu-dropdown .menu-contents li a {
        color: #e6e9f0 !important;
    }

    .menu-dropdown .menu-contents li a:hover {
        background-color: rgba(26, 188, 123, 0.18) !important;
    }

    .menu-dropdown .menu-contents .profile {
        border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    }

    .user a, .user-group a, .connection a, .connection-group a,
    .user a:hover, .user-group a:hover, .connection a:hover, .connection-group a:hover,
    .user a:visited, .user-group a:visited, .connection a:visited, .connection-group a:visited {
        color: #e6e9f0 !important;
    }

    .recent-connections .connection:hover {
        background: rgba(26, 188, 123, 0.12) !important;
    }

    .recent-connections .connection .thumbnail > * {
        border: 1px solid rgba(255, 255, 255, 0.15) !important;
        border-radius: 6px;
    }

    .list-item .icon.type,
    .all-connections .icon {
        filter: invert(1) brightness(1.8);
    }

    .placeholder {
        color: rgba(255, 255, 255, 0.5) !important;
    }
}
