/* ETEVERS SDI Lab - Guacamole Login Page Branding */

body, .login-ui {
    background: #fafbff !important;
    color: #0a0f24;
    font-family: Pretendard, -apple-system, BlinkMacSystemFont,
                 'Segoe UI', 'Noto Sans KR', sans-serif !important;
    overflow: hidden;
}

body::before {
    content: '';
    position: fixed;
    inset: 0;
    background:
        radial-gradient(ellipse 70% 50% at 20% 20%, rgba(7,21,162,.05), transparent 60%),
        radial-gradient(ellipse 60% 50% at 80% 80%, rgba(7,21,162,.07), transparent 60%);
    z-index: 0;
    pointer-events: none;
}

body::after {
    content: '';
    position: fixed;
    inset: 0;
    background-image:
        linear-gradient(rgba(7,21,162,.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(7,21,162,.04) 1px, transparent 1px);
    background-size: 80px 80px;
    background-position: center;
    z-index: 0;
    pointer-events: none;
    -webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
            mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
}

/* === FIX 1: viewport 전체를 차지하는 flex 컨테이너 === */
.login-ui {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 2rem !important;
    z-index: 1 !important;
}

.login-ui .login-dialog {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 360px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: center;
}

.login-ui .login-dialog .logo {
    width: 209px !important;
    height: 33px !important;
    background-image: url('app/ext/etevers-branding/images/logo.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-color: transparent !important;
    margin: 0 auto 3rem !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border: none !important;
}

.login-ui .version,
.login-ui .login-dialog > h1,
.login-ui .login-dialog > h2,
.login-ui .login-dialog > h3,
.login-ui .form-header {
    display: none !important;
}

.login-ui .login-fields {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.login-ui .form-group,
.login-ui .form,
.login-ui .fields {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.login-ui .labeled-field {
    margin: 0 !important;
    width: 100%;
    display: flex !important;
    flex-direction: column !important;
    gap: .375rem !important;
}

/* === FIX 2: 라벨 다시 보이게 + 스타일링 === */
.login-ui .field-header {
    display: block !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}

.login-ui .field-header label {
    color: rgba(10,15,36,.65) !important;
    font-size: .875rem !important;
    font-weight: 500 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
    cursor: pointer;
}

.login-ui .login-fields input[type="text"],
.login-ui .login-fields input[type="password"],
.login-ui .labeled-field input,
.login-ui .username-field input,
.login-ui .password-field input {
    width: 100% !important;
    padding: .9rem 1.1rem !important;
    border: 1px solid rgba(7,21,162,.15) !important;
    border-radius: 8px !important;
    font-size: 1rem !important;
    background: #fff !important;
    color: #0a0f24 !important;
    outline: none !important;
    box-shadow: none !important;
    transition: border-color .15s, box-shadow .15s !important;
    font-family: inherit !important;
    text-align: left;
}

.login-ui .login-fields input:focus,
.login-ui .labeled-field input:focus {
    border-color: #0715A2 !important;
    box-shadow: 0 0 0 3px rgba(7,21,162,.1) !important;
}

.login-ui .password-field {
    position: relative;
}

.login-ui .password-field .toggle-password {
    position: absolute;
    right: .75rem;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    opacity: .5;
}

.login-ui .buttons {
    width: 100%;
    margin-top: 1rem;
    display: flex;
    gap: .5rem;
}

.login-ui input[type="submit"],
.login-ui input.login,
.login-ui input.continue-login {
    flex: 1;
    padding: .95rem !important;
    background: #0715A2 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: opacity .15s, transform .05s !important;
    font-family: inherit !important;
    letter-spacing: -.01em !important;
    text-transform: none !important;
}

.login-ui input[type="submit"]:hover {
    opacity: .9 !important;
}

.login-ui input[type="submit"]:active {
    transform: translateY(1px) !important;
}

.login-ui input[type="submit"]:disabled {
    opacity: .6 !important;
    cursor: wait !important;
}

.login-ui .notification {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

@media (max-width: 640px) {
    .login-ui .login-dialog .logo {
        margin-bottom: 2rem !important;
    }
}
/*
 * 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;

}
