/*
 * 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}/* ============================================================
   FullNube Branding for Apache Guacamole 1.6.0
   v2 — 2026-06-09
   ============================================================ */

/* ----- TIPOGRAFÍA GLOBAL ----- */
body, .login-ui, .header, input, button, select, textarea,
.menu-dropdown, .list-item, h1, h2, h3 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                 Helvetica, Arial, sans-serif !important;
}

/* ============================================================
   LOGIN
   ============================================================ */
div.login-ui {
    background: linear-gradient(135deg, #003B7B 0%, #0072C6 50%, #009AE1 100%) !important;
}

.login-ui .logo {
    background-image: url('app/ext/fullnube-branding/images/logo.svg') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    width: 240px !important;
    height: 90px !important;
    margin: -120px auto 30px !important;
    max-width: 100% !important;
}

.login-ui .version {
    display: none !important;
}

.login-ui .login-dialog {
    background: white !important;
    border-radius: 8px !important;
    margin-top: 130px !important;
    overflow: visible !important;
}

.login-ui .buttons input.login,
.login-ui .buttons input.continue-login {
    background-color: #003B7B !important;
    border: none !important;
    border-radius: 4px !important;
    color: white !important;
    cursor: pointer !important;
    transition: background-color 200ms ease !important;
}

.login-ui .buttons input.login:hover,
.login-ui .buttons input.continue-login:hover {
    background-color: #0072C6 !important;
}

.login-ui .buttons input.login:focus,
.login-ui .buttons input.continue-login:focus {
    outline: 2px solid #009AE1 !important;
    outline-offset: 2px !important;
}

.login-ui input[type="text"]:focus,
.login-ui input[type="password"]:focus,
.login-ui input[type="number"]:focus {
    outline: 2px solid #0072C6 !important;
    outline-offset: 1px !important;
}

/* ============================================================
   HEADER (post-login)
   ============================================================ */
.header {
    background-color: #003B7B !important;
}

.header * {
    color: white !important;
}

.header a {
    color: white !important;
}

.header .title a,
.header h1.title a,
.header h1 a {
    display: inline-block !important;
    background-image: url('app/ext/fullnube-branding/images/logo.svg') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
    width: 160px !important;
    height: 36px !important;
    text-indent: -9999px !important;
    overflow: hidden !important;
    vertical-align: middle !important;
}

h2 {
    background-color: #003B7B !important;
    color: white !important;
}

/* ============================================================
   LISTAS DE CONEXIONES
   ============================================================ */
.list-item:not(.selected) .caption:hover {
    background: rgba(0, 154, 225, 0.3) !important;
    transition: background-color 150ms ease !important;
}

.list-item.selected {
    background: rgba(0, 154, 225, 0.3) !important;
}

.recent-connections .connection:hover {
    background: rgba(0, 154, 225, 0.3) !important;
    transition: background-color 150ms ease !important;
}

/* ============================================================
   MENU DROPDOWN
   ============================================================ */
.menu-dropdown {
    background: rgba(0, 59, 123, 0.5) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.2) !important;
    transition: background-color 200ms ease !important;
}

.menu-dropdown:hover {
    background: rgba(0, 59, 123, 0.3) !important;
}

.menu-dropdown.open,
.menu-dropdown.open:hover {
    background: rgba(0, 59, 123, 0.8) !important;
}

.menu-dropdown .menu-contents {
    background: #003B7B !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.menu-dropdown .menu-contents li a {
    color: white !important;
    transition: background-color 150ms ease !important;
}

.menu-dropdown .menu-contents li a:hover {
    background-color: #0072C6 !important;
}

/* ============================================================
   TABS Y SECCIONES
   ============================================================ */
.page-tabs .page-list li a[href]:hover,
.section-tabs li a:hover {
    background-color: rgba(0, 154, 225, 0.3) !important;
    transition: background-color 150ms ease !important;
}

.page-tabs .page-list li a[href].current,
.page-tabs .page-list li a[href].current:hover,
.section-tabs li a.current,
.section-tabs li a.current:hover {
    background: #003B7B !important;
    color: white !important;
}

/* ============================================================
   SESSION LIST
   ============================================================ */
.settings table.session-list tr.session:hover {
    background: rgba(0, 154, 225, 0.3) !important;
    transition: background-color 150ms ease !important;
}

/* ============================================================
   HEADER FILTER
   ============================================================ */
.header .filter input {
    color: white !important;
    border-left: 1px solid rgba(255, 255, 255, 0.3) !important;
}

.header .filter input::placeholder {
    color: rgba(255, 255, 255, 0.6) !important;
}

.header .filter input:focus {
    outline: 2px solid rgba(255, 255, 255, 0.5) !important;
    outline-offset: -1px !important;
}

/* ============================================================
   FATAL PAGE (logout, errores)
   ============================================================ */
.fatal-page {
    background: linear-gradient(135deg, #003B7B 0%, #0072C6 50%, #009AE1 100%) !important;
    min-height: 100vh !important;
}

.fatal-page input.login,
.fatal-page input[type="submit"],
.fatal-page input[type="button"],
.fatal-page button,
.fatal-page a.login-again {
    background-color: #003B7B !important;
    border: none !important;
    border-radius: 4px !important;
    color: white !important;
    cursor: pointer !important;
    transition: background-color 200ms ease !important;
    padding: 10px 20px !important;
    text-decoration: none !important;
    display: inline-block !important;
    font-weight: 500 !important;
}

.fatal-page input.login:hover,
.fatal-page input[type="submit"]:hover,
.fatal-page input[type="button"]:hover,
.fatal-page button:hover,
.fatal-page a.login-again:hover {
    background-color: #0072C6 !important;
}

/* ============================================================
   LOGGED OUT MODAL
   ============================================================ */
.logged-out-modal {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(135deg, #003B7B 0%, #0072C6 50%, #009AE1 100%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 1000 !important;
}

.logged-out-modal guac-modal,
.logged-out-modal .modal-contents {
    background: transparent !important;
    position: static !important;
}

.logged-out-modal .notification {
    background: white !important;
    border-radius: 8px !important;
    padding: 32px 48px !important;
    text-align: center !important;
    min-width: 280px !important;
}

.logged-out-modal .notification p {
    color: #003B7B !important;
    font-weight: 500 !important;
    margin: 0 0 16px 0 !important;
    font-size: 16px !important;
}

.logged-out-modal .notification button {
    background-color: #003B7B !important;
    border: none !important;
    border-radius: 4px !important;
    color: white !important;
    cursor: pointer !important;
    transition: background-color 200ms ease !important;
    padding: 10px 24px !important;
    font-weight: 500 !important;
}

.logged-out-modal .notification button:hover {
    background-color: #0072C6 !important;
}
