/* ============================================
   COREX GUACAMOLE COMPLETE REBRANDING CSS
   ============================================ */

/* Login Screen Styling */
/* Corex-Style Split Screen Login Design */
div.login-ui {
    background: white !important;
    min-height: 100vh !important;
    height: 100vh !important;
    display: flex !important;
    position: relative !important;
    overflow: hidden !important;
    width: 100% !important;
}

/* Left section for login form - Corex style 50/50 split */
.login-ui .login-dialog-middle {
    width: 50% !important;
    height: 100vh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 5% !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 2 !important;
    background: white !important;
}

/* Right side - Background Image */
.login-ui::before {
    content: '' !important;
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    width: 50% !important;
    height: 100vh !important;
    background: linear-gradient(135deg, #003966 0%, #53AE57 100%) !important;
    background-image: url('app/ext/tempnamespace/images/wallpaper_tube.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    z-index: 1 !important;
}

/* Corex-style login dialog - no card, clean layout, centered elements */
.login-ui .login-dialog.notification {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 400px !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: center !important;
    position: relative !important;
    z-index: 2 !important;
    text-align: center !important;
}

.login-ui .login-dialog.notification:hover {
    transform: none !important;
    box-shadow: none !important;
}

/* Remove the header completely - Corex style doesn't have one */
.login-ui .login-dialog.notification::before {
    display: none !important;
}

/* Hide version number - move it outside screen */
.version-number {
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Login form content area - Corex style */
.login-ui .login-dialog.notification > * {
    padding: 0 !important;
    margin: 0 !important;
}

/* Corex logo styling - larger, centered and prominent */
.login-ui .logo {
    background-image: url('app/ext/tempnamespace/images/logo-placeholder.png') !important;
    width: 280px !important;
    height: 80px !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    margin: 0 auto 1rem auto !important;
    filter: none !important;
    padding: 0 !important;
    display: block !important;
}

/* App name styling (Cloud Gate) */
.login-ui .app-name {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-weight: 300 !important;
    font-size: 2.5rem !important;
    color: #333 !important;
    text-align: center !important;
    margin: 0 auto 3rem auto !important;
    letter-spacing: -1px !important;
    width: 100% !important;
}
/* Corex-style form inputs - larger with icons */
.login-ui input[name="username"],
.login-ui input[name="password"] {
    border: none !important;
    border-bottom: 2px solid #ccc !important;
    border-radius: 0 !important;
    padding: 1.5rem 0 1.5rem 3rem !important;
    font-size: 1.2rem !important;
    transition: all 0.3s ease !important;
    background: transparent !important;
    width: 100% !important;
    max-width: 350px !important;
    box-sizing: border-box !important;
    color: #333 !important;
    margin: 0 0 3rem 0 !important;
    outline: none !important;
    text-align: left !important;
    display: block !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    position: relative !important;
}

/* Input icons */
.login-ui .login-dialog input[type="text"]::before,
.login-ui .login-dialog input[type="password"]::before {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2rem;
    color: #666;
    z-index: 10;
}

/* Email input styling with icon */
.login-ui input[name="username"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3e%3cpath d='M12 12.713l-11.985-9.713h23.97l-11.985 9.713zm0 2.574l-12-9.725v15.438h24v-15.438l-12 9.725z'/%3e%3c/svg%3e") !important;
    background-size: 20px 20px !important;
    background-repeat: no-repeat !important;
    background-position: 0 center !important;
}

/* Password input styling with icon */
.login-ui input[name="password"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3e%3cpath d='M18 10v-4c0-3.313-2.687-6-6-6s-6 2.687-6 6v4h-3v14h18v-14h-3zm-5 7.723v2.277h-2v-2.277c-.595-.347-1-.985-1-1.723 0-1.104.896-2 2-2s2 .896 2 2c0 .738-.405 1.376-1 1.723zm-5-7.723v-4c0-2.206 1.794-4 4-4 2.206 0 4 1.794 4 4v4h-8z'/%3e%3c/svg%3e") !important;
    background-size: 18px 18px !important;
    background-repeat: no-repeat !important;
    background-position: 0 center !important;
}

.login-ui input[name="username"]:focus,
.login-ui input[name="password"]:focus {
    border-bottom-color: #003966 !important;
    border-bottom-width: 2px !important;
    outline: none !important;
    background-color: transparent !important;
}

/* Hide field labels and headers */
.login-ui .field-header label {
    display: none !important;
}

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

/* Form container - ensure proper spacing for error messages */
.login-ui .login-form,
.login-ui form {
    width: 100% !important;
    max-width: 350px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}

.login-ui input[name="username"]::placeholder,
.login-ui input[name="password"]::placeholder {
    color: #999 !important;
    font-weight: 400 !important;
    text-align: left !important;
    font-size: 1.1rem !important;
}

/* Corex-style button - simple and clean, larger */
.login-ui input.login,
.login-ui input[type="submit"] {
    background: #003966 !important;
    border: none !important;
    border-radius: 4px !important;
    color: white !important;
    padding: 1.2rem 2rem !important;
    font-size: 1.1rem !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    width: 100% !important;
    max-width: 350px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin: 2rem auto 0 auto !important;
    display: block !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
}

.login-ui input.login:hover,
.login-ui input[type="submit"]:hover {
    background: #002244 !important;
    transform: none !important;
    box-shadow: none !important;
}

.login-ui input.login:active,
.login-ui input[type="submit"]:active {
    transform: none !important;
}

/* Hide continue button and other unwanted buttons */
.login-ui .continue-login,
.login-ui input[value="Continue"],
.login-ui button.continue,
.login-ui .continue-button,
.login-ui input[type="button"]:not([type="submit"]) {
    display: none !important;
}

/* Corex-style typography - clean and minimal, centered */
.login-ui .app-name {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-weight: 300 !important;
    font-size: 2.5rem !important;
    color: #333 !important;
    text-align: center !important;
    margin: 0 auto 2rem auto !important;
    letter-spacing: -1px !important;
    width: 100% !important;
}

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

/* Error messages styling - Only show when there's an actual error */
.login-ui.error p.login-error {
    position: static !important;
    display: block !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    background: rgba(220, 38, 38, 0.1) !important;
    border: 1px solid rgba(220, 38, 38, 0.3) !important;
    border-radius: 6px !important;
    padding: 0.75rem 1rem !important;
    margin: 1rem auto 0 auto !important;
    color: #dc2626 !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 350px !important;
    box-sizing: border-box !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    border-left: 4px solid #dc2626 !important;
}

/* Hide error messages by default (when no error state) */
.login-ui:not(.error) p.login-error,
.login-ui p.login-error:empty {
    display: none !important;
    visibility: hidden !important;
}

/* Hide the top fixed error message completely */
body > p.login-error,
html > p.login-error,
.login-ui.error > p.login-error {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
}

/* Corex-style warning message - clean, minimal and centered to login section */
.login-ui::after {
    content: "🔒 Access to this system is for AUTHORIZED PERSONNEL ONLY" !important;
    position: absolute !important;
    bottom: 2rem !important;
    left: 25% !important;
    transform: translateX(-50%) !important;
    background: rgba(0, 57, 102, 0.9) !important;
    color: white !important;
    padding: 0.8rem 1.5rem !important;
    border-radius: 4px !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-size: 0.85rem !important;
    font-weight: 400 !important;
    text-align: center !important;
    border-left: 3px solid #53AE57 !important;
    letter-spacing: 0.3px !important;
    z-index: 1000 !important;
    white-space: nowrap !important;
    backdrop-filter: blur(10px) !important;
}

/* Clean Corex-style design - remove dark mode complexity */
@keyframes subtle-float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-3px); }
}

.login-ui .logo {
    animation: subtle-float 6s ease-in-out infinite !important;
}

/* Responsive design - Corex style */
@media (max-width: 768px) {
    .login-ui::before {
        display: none !important;
    }
    
    div.login-ui {
        flex-direction: column !important;
        background: white !important;
    }
    
    .login-ui .login-dialog-middle {
        width: 100% !important;
        height: 100vh !important;
        padding: 2rem 5% !important;
        justify-content: center !important;
        align-items: center !important;
    }
    
    .login-ui .login-dialog.notification {
        width: 100% !important;
        max-width: 400px !important;
        margin: 0 auto !important;
        align-items: center !important;
        text-align: center !important;
    }
    
    .login-ui .logo {
        width: 150px !important;
        height: 45px !important;
        margin: 0 auto 2rem auto !important;
        background-position: center !important;
    }
    
    .login-ui .app-name {
        font-size: 2rem !important;
        text-align: center !important;
        margin-bottom: 2rem !important;
    }
    
    .login-ui input[name="username"],
    .login-ui input[name="password"] {
        max-width: 100% !important;
        text-align: left !important;
        padding-left: 3rem !important;
    }
    
    .login-ui input[type="submit"] {
        max-width: 100% !important;
    }
    
    .login-ui::after {
        bottom: 1rem !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        font-size: 0.75rem !important;
    }
}

/* ============================================
   COREX GUACAMOLE APPLICATION REBRANDING
   ============================================ */

/* Main Application Header/Navigation */
.header,
.main-header,
.navbar,
.navigation-header {
    background: #003966 !important;
    border-bottom: 3px solid #53AE57 !important;
}

/* Guacamole Logo Replacement */
.logo,
.brand,
.header-logo,
.guacamole-logo {
    background-image: url('app/ext/tempnamespace/images/logo-placeholder.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    text-indent: -9999px !important;
    width: 180px !important;
    height: 50px !important;
}

/* Hide default Guacamole text/logo */
.logo::before,
.logo::after,
.brand::before,
.brand::after {
    display: none !important;
}

/* Navigation Menu Styling */
.nav-menu,
.navigation-menu,
.main-menu {
    background: #003966 !important;
}

.nav-menu li a,
.navigation-menu li a,
.main-menu li a {
    color: white !important;
    transition: all 0.3s ease !important;
}

.nav-menu li a:hover,
.navigation-menu li a:hover,
.main-menu li a:hover {
    background: #53AE57 !important;
    color: white !important;
}

/* Active menu items */
.nav-menu li.active a,
.navigation-menu li.active a,
.main-menu li.active a {
    background: #53AE57 !important;
    color: white !important;
}

/* Side Panel/Settings Panel */
.settings,
.settings-panel,
.side-panel {
    background: #f8f9fa !important;
    border-left: 3px solid #53AE57 !important;
}

/* Connection List/Home Screen */
.connection-list,
.home-screen,
.dashboard {
    background: #f8f9fa !important;
}

/* Connection Tiles */
.connection,
.connection-tile,
.connection-group {
    background: white !important;
    border: 2px solid #e0e6ed !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0, 57, 102, 0.1) !important;
    transition: all 0.3s ease !important;
}

.connection:hover,
.connection-tile:hover,
.connection-group:hover {
    border-color: #53AE57 !important;
    box-shadow: 0 4px 12px rgba(83, 174, 87, 0.2) !important;
    transform: translateY(-2px) !important;
}

/* Buttons */
.btn,
.button,
input[type="button"],
input[type="submit"],
button {
    background: #53AE57 !important;
    color: white !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 0.75rem 1.5rem !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
}

.btn:hover,
.button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
button:hover {
    background: #4a9d4e !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(83, 174, 87, 0.3) !important;
}

/* Secondary buttons */
.btn-secondary,
.button-secondary {
    background: #003966 !important;
}

.btn-secondary:hover,
.button-secondary:hover {
    background: #002244 !important;
}

/* Forms and Inputs */
input[type="text"],
input[type="password"],
input[type="email"],
select,
textarea {
    border: 2px solid #e0e6ed !important;
    border-radius: 6px !important;
    padding: 0.75rem !important;
    transition: all 0.3s ease !important;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
select:focus,
textarea:focus {
    border-color: #53AE57 !important;
    box-shadow: 0 0 0 3px rgba(83, 174, 87, 0.1) !important;
    outline: none !important;
}

/* Modals and Dialogs */
.modal,
.dialog,
.popup {
    border-radius: 12px !important;
    box-shadow: 0 20px 40px rgba(0, 57, 102, 0.2) !important;
}

.modal-header,
.dialog-header {
    background: #003966 !important;
    color: white !important;
    border-radius: 12px 12px 0 0 !important;
}

/* Tabs */
.tab,
.tab-button {
    border-bottom: 3px solid transparent !important;
    transition: all 0.3s ease !important;
}

.tab.active,
.tab-button.active,
.tab:hover,
.tab-button:hover {
    border-bottom-color: #53AE57 !important;
    color: #003966 !important;
}

/* Status indicators */
.status-connected,
.connected {
    color: #53AE57 !important;
}

.status-disconnected,
.disconnected {
    color: #dc3545 !important;
}

/* Loading indicators */
.loading,
.spinner {
    border-color: #53AE57 !important;
}

/* Footer */
.footer {
    background: #003966 !important;
    color: white !important;
    text-align: center !important;
    padding: 1rem !important;
}

/* Custom Corex branding footer */
.footer::after {
    content: "Powered by Corex Cloud Gate" !important;
    display: block !important;
    font-size: 0.9rem !important;
    margin-top: 0.5rem !important;
    opacity: 0.8 !important;
}

/* Hide original Guacamole branding */
.guacamole-brand,
.apache-guacamole {
    display: none !important;
}

/* Notification/Alert styling */
.notification,
.alert {
    border-radius: 8px !important;
    border-left: 4px solid #53AE57 !important;
}

.notification.error,
.alert.error {
    border-left-color: #dc3545 !important;
}

.notification.warning,
.alert.warning {
    border-left-color: #ffc107 !important;
}

/* Context menus */
.context-menu,
.dropdown-menu {
    background: white !important;
    border: 2px solid #e0e6ed !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 20px rgba(0, 57, 102, 0.15) !important;
}

.context-menu li a,
.dropdown-menu li a {
    color: #333 !important;
    transition: all 0.3s ease !important;
}

.context-menu li a:hover,
.dropdown-menu li a:hover {
    background: #53AE57 !important;
    color: white !important;
}

/* Settings and preferences */
.settings-section h3,
.preferences-section h3 {
    color: #003966 !important;
    border-bottom: 2px solid #53AE57 !important;
    padding-bottom: 0.5rem !important;
}

/* File browser (if enabled) */
.file-browser {
    background: white !important;
    border: 2px solid #e0e6ed !important;
    border-radius: 8px !important;
}

.file-browser .file:hover {
    background: rgba(83, 174, 87, 0.1) !important;
}

/* Connection parameters form */
.connection-form .form-group label {
    color: #003966 !important;
    font-weight: 500 !important;
}

/* User menu */
.user-menu {
    background: white !important;
    border: 2px solid #e0e6ed !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 20px rgba(0, 57, 102, 0.15) !important;
}

.user-menu a {
    color: #333 !important;
    transition: all 0.3s ease !important;
}

.user-menu a:hover {
    background: #53AE57 !important;
    color: white !important;
}

/* Override any remaining default blue colors */
.text-primary,
.link-primary {
    color: #003966 !important;
}

/* Ensure Corex colors take precedence */
* {
    --primary-color: #003966 !important;
    --secondary-color: #53AE57 !important;
    --accent-color: #A3D3EC !important;
}
/* ============================================
   COREX GUACAMOLE APPLICATION STYLING
   Complete application rebranding beyond login
   ============================================ */

/* Main Application Container */
body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    background: #f8f9fa !important;
}

/* Top Navigation Header - Make it Corex blue */
.header,
.main-header,
div.header {
    background: #003966 !important;
    border-bottom: 3px solid #53AE57 !important;
    box-shadow: 0 2px 8px rgba(0, 57, 102, 0.15) !important;
}

/* Header text styling */
.header h1,
.header h2,
.main-header h1,
.main-header h2 {
    color: white !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-weight: 300 !important;
}

/* User menu in header (top right) */
.user-menu,
.header .user-menu {
    background: rgba(255, 255, 255, 0.1) !important;
    border-radius: 6px !important;
    color: white !important;
    padding: 0.5rem 1rem !important;
}

.user-menu a,
.header .user-menu a {
    color: white !important;
    text-decoration: none !important;
}

.user-menu:hover,
.header .user-menu:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}

/* Simple Menu Contents Styling */
.user-menu .menu-contents {
    background: white !important;
    border: 1px solid #e0e6ed !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

/* Profile Section */
.user-menu .profile {
    background: white !important;
    padding: 1rem !important;
    border-bottom: 1px solid #f0f0f0 !important;
}

.user-menu .profile .full-name a {
    color: #003966 !important;
    font-weight: 600 !important;
}

.user-menu .profile .organizational-role,
.user-menu .profile .organization {
    color: #666 !important;
}

/* All menu links */
.user-menu .action-list a,
.user-menu .page-list a {
    color: #003966 !important;
    background: white !important;
    padding: 0.5rem 1rem !important;
    display: block !important;
    text-decoration: none !important;
}

.user-menu .action-list a:hover,
.user-menu .page-list a:hover {
    background: #f8f9fa !important;
    color: #53AE57 !important;
}

/* Current page indicator */
.user-menu .page-list a.current {
    background: #f0f8ff !important;
    color: #003966 !important;
    font-weight: 600 !important;
}

/* Logout button */
.user-menu .action-list a.logout {
    color: #dc3545 !important;
}

.user-menu .action-list a.logout:hover {
    background: #f8f9fa !important;
    color: #dc3545 !important;
}

/* Recent Connections Section */
div.recent-connections {
    background: white !important;
    border-radius: 12px !important;
    padding: 2rem !important;
    margin-bottom: 2rem !important;
    box-shadow: 0 4px 12px rgba(0, 57, 102, 0.1) !important;
}

div.recent-connections h2 {
    color: #003966 !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-weight: 500 !important;
    border-bottom: 2px solid #53AE57 !important;
    padding-bottom: 1rem !important;
    margin-bottom: 1.5rem !important;
}

/* Connection Tiles - Make them more modern */
div.recent-connections div.connection,
.connection,
.connection-tile {
    background: white !important;
    border: 2px solid #e0e6ed !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 8px rgba(0, 57, 102, 0.08) !important;
    transition: all 0.3s ease !important;
    padding: 1rem !important;
    margin: 1rem !important;
}

div.recent-connections div.connection:hover,
.connection:hover,
.connection-tile:hover {
    border-color: #53AE57 !important;
    box-shadow: 0 8px 20px rgba(83, 174, 87, 0.2) !important;
    transform: translateY(-4px) !important;
}

/* Connection thumbnails */
.connection .thumbnail,
div.recent-connections .connection .thumbnail {
    border-radius: 8px !important;
    overflow: hidden !important;
    border: 2px solid #e0e6ed !important;
}

/* Connection names/captions */
.connection .caption,
.connection .name,
div.recent-connections .connection .caption {
    color: #003966 !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-weight: 500 !important;
    text-align: center !important;
    margin-top: 0.75rem !important;
}

/* All Connections Section */
div.all-connections,
.all-connections {
    background: white !important;
    border-radius: 12px !important;
    padding: 2rem !important;
    box-shadow: 0 4px 12px rgba(0, 57, 102, 0.1) !important;
}

/* All Connections Header - Fix the blue header */
div.all-connections .header,
.all-connections .header,
.header.tabbed {
    background: #003966 !important;
    border-radius: 8px 8px 0 0 !important;
    margin: -2rem -2rem 2rem -2rem !important;
    padding: 1.5rem 2rem !important;
    border-bottom: 3px solid #53AE57 !important;
}

div.all-connections .header h2,
.all-connections .header h2,
.header.tabbed h2 {
    color: white !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-weight: 400 !important;
    margin: 0 !important;
    font-size: 1.5rem !important;
}

/* Filter input in header */
.header .filter input,
.all-connections .header .filter input {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 2px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 6px !important;
    padding: 0.5rem 1rem !important;
    color: #003966 !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
}

.header .filter input:focus,
.all-connections .header .filter input:focus {
    border-color: #53AE57 !important;
    box-shadow: 0 0 0 3px rgba(83, 174, 87, 0.3) !important;
    outline: none !important;
    background: white !important;
}

/* Connection list items */
.all-connections .connection,
.all-connections .connection-group,
div.all-connections .connection,
div.all-connections .connection-group {
    background: #f8f9fa !important;
    border: 2px solid #e0e6ed !important;
    border-radius: 8px !important;
    margin: 0.5rem 0 !important;
    padding: 1rem 1.5rem !important;
    transition: all 0.3s ease !important;
}

.all-connections .connection:hover,
.all-connections .connection-group:hover,
div.all-connections .connection:hover,
div.all-connections .connection-group:hover {
    background: white !important;
    border-color: #53AE57 !important;
    box-shadow: 0 4px 12px rgba(83, 174, 87, 0.15) !important;
    transform: translateX(8px) !important;
}

.all-connections .connection a,
.all-connections .connection-group a,
div.all-connections .connection a,
div.all-connections .connection-group a {
    color: #003966 !important;
    text-decoration: none !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-weight: 500 !important;
}

.all-connections .connection a:hover,
.all-connections .connection-group a:hover,
div.all-connections .connection a:hover,
div.all-connections .connection-group a:hover {
    color: #53AE57 !important;
}

/* Buttons throughout the application */
button,
input[type="button"],
input[type="submit"],
.button,
a.button {
    background: #53AE57 !important;
    color: white !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 0.75rem 1.5rem !important;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
.button:hover,
a.button:hover {
    background: #4a9d4e !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(83, 174, 87, 0.3) !important;
}

/* Ensure Corex colors take precedence everywhere */
* {
    --primary-color: #003966 !important;
    --secondary-color: #53AE57 !important;
    --accent-color: #A3D3EC !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;

}
.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}