* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Windows 95 style buttons - apply to all buttons */
button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
    padding: 3px 8px;
    font-size: 11px;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    background: #c0c0c0;
    cursor: pointer;
    color: #000;
    font-family: 'MS Sans Serif', sans-serif;
    font-weight: bold;
    box-shadow: none;
    outline: none;
}

button:active,
input[type="button"]:active,
input[type="submit"]:active,
input[type="reset"]:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
    padding: 4px 7px 2px 9px;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover {
    background-color: #d4d0c8;
}

body {
    font-family: 'MS Sans Serif', 'Segoe UI', sans-serif;
    overflow: hidden;
    background: #008080; /* Windows 95 teal background */
    background-image: 
        repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0,0,0,0.03) 2px, rgba(0,0,0,0.03) 4px);
    height: 100vh;
    width: 100vw;
    font-size: 11px;
}

/* Login Screen - Windows 95 style */
.login-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #008080;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10000;
}

.login-container {
    width: 100%;
    max-width: 400px;
    padding: 20px;
}

.login-box {
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    padding: 20px;
    box-shadow: 
        inset -1px -1px 0px #000,
        inset 1px 1px 0px #fff,
        2px 2px 4px rgba(0, 0, 0, 0.3);
}

.login-box h1 {
    text-align: center;
    margin-bottom: 30px;
    color: #333;
    font-size: 28px;
}

.form-group {
    margin-bottom: 20px;
}

.form-group label {
    display: block;
    margin-bottom: 8px;
    color: #555;
    font-weight: 500;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 3px;
    border: 2px inset #c0c0c0;
    background: #fff;
    font-size: 11px;
    font-family: 'MS Sans Serif', sans-serif;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: 1px dotted #000;
}

.btn {
    width: 100%;
    padding: 4px 12px;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    background: #c0c0c0;
    font-size: 11px;
    font-weight: bold;
    cursor: pointer;
    color: #000;
    font-family: 'MS Sans Serif', sans-serif;
    box-shadow: none;
}

.btn:active,
.btn:focus:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
    padding: 5px 11px 3px 13px; /* Shift text for pressed effect */
}

.btn-primary {
    background-color: #c0c0c0;
    color: #000;
}

.btn-primary:hover {
    background-color: #d4d0c8;
}

.error-message {
    color: #e74c3c;
    font-size: 14px;
    margin-bottom: 15px;
    min-height: 20px;
    display: none;
}

.error-message.show {
    display: block;
}

/* Desktop - Windows 95 style */
.desktop {
    width: 100vw;
    height: 100vh;
    position: relative;
    background: #008080;
    overflow: hidden;
}

/* Windows Container */
#windows-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1000;
}

#windows-container > .window {
    pointer-events: auto;
}

/* Desktop Icons */
.desktop-icons {
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    align-content: flex-start;
}

.desktop-icon {
    width: 80px;
    text-align: center;
    cursor: pointer;
    padding: 8px 4px;
    user-select: none;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.desktop-icon:hover .icon-label {
    background-color: #000080;
    color: white;
}

.desktop-icon:active .icon-image {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
}

.icon-image {
    font-size: 32px;
    margin-bottom: 8px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.win95-icon {
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    padding: 4px;
    font-size: 20px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Windows 95 Style Icons - Simple geometric shapes */
.tenants-icon {
    background: #c0c0c0;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000080'%3E%3Cpath d='M12 2L2 7v10c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V7l-10-5z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.repos-icon {
    background: #c0c0c0;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23008080'%3E%3Cpath d='M10 4H4c-1.11 0-2 .89-2 2v12c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2h-8l-2-2z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.secrets-icon {
    background: #c0c0c0;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFC107'%3E%3Cpath d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM12 17c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.domains-icon {
    background: #c0c0c0;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23008080'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.94-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.health-icon {
    background: #c0c0c0;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300C853'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.maintenance-icon {
    background: #c0c0c0;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FF9800'%3E%3Cpath d='M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.docs-icon {
    background: #c0c0c0;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000080'%3E%3Cpath d='M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.registry-icon {
    background: #c0c0c0;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23008080'%3E%3Cpath d='M20 6h-2.18c.11-.31.18-.65.18-1 0-1.66-1.34-3-3-3-1.05 0-1.96.54-2.5 1.35l-.5.67-.5-.68C10.96 2.54 10.05 2 9 2 7.34 2 6 3.34 6 5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM9 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm11 15H4v-2h16v2zm0-5H4V8h5.08L7 10.83 8.62 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H20v6z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

/* Start menu icons */
.start-menu-icon {
    width: 20px;
    height: 20px;
    display: inline-block;
    background: #c0c0c0;
    border: 1px outset #c0c0c0;
    margin-right: 8px;
    flex-shrink: 0;
    position: relative;
}

.tenants-icon-small {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000080'%3E%3Cpath d='M12 2L2 7v10c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V7l-10-5z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.repos-icon-small {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23008080'%3E%3Cpath d='M10 4H4c-1.11 0-2 .89-2 2v12c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2h-8l-2-2z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.secrets-icon-small {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFC107'%3E%3Cpath d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM12 17c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.domains-icon-small {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23008080'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.94-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.health-icon-small {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300C853'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.maintenance-icon-small {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FF9800'%3E%3Cpath d='M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.docs-icon-small {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000080'%3E%3Cpath d='M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.registry-icon-small {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23008080'%3E%3Cpath d='M20 6h-2.18c.11-.31.18-.65.18-1 0-1.66-1.34-3-3-3-1.05 0-1.96.54-2.5 1.35l-.5.67-.5-.68C10.96 2.54 10.05 2 9 2 7.34 2 6 3.34 6 5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM9 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm11 15H4v-2h16v2zm0-5H4V8h5.08L7 10.83 8.62 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H20v6z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

/* Clusters Icon */
.clusters-icon {
    position: relative;
    width: 32px;
    height: 32px;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23326CE5'%3E%3Cpath d='M10.59 13.41c-.41.39-.41 1.03 0 1.42.39.39 1.03.39 1.42 0 .39-.39.39-1.03 0-1.42-.39-.39-1.03-.39-1.42 0zM9.17 6.17c-.39.39-.39 1.03 0 1.42.39.39 1.03.39 1.42 0 .39-.39.39-1.03 0-1.42-.39-.39-1.03-.39-1.42 0zM13.59 6.17c-.39.39-.39 1.03 0 1.42.39.39 1.03.39 1.42 0 .39-.39.39-1.03 0-1.42-.39-.39-1.03-.39-1.42 0zM16.5 12c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5.67 1.5 1.5 1.5 1.5-.67 1.5-1.5zM12 1L2 6v2c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V6l-10-5zm0 3.18L19.82 8 12 10.82 4.18 8 12 4.18z'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-position: center;
    background-repeat: no-repeat;
}

.clusters-icon-small {
    position: relative;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23326CE5'%3E%3Cpath d='M10.59 13.41c-.41.39-.41 1.03 0 1.42.39.39 1.03.39 1.42 0 .39-.39.39-1.03 0-1.42-.39-.39-1.03-.39-1.42 0zM9.17 6.17c-.39.39-.39 1.03 0 1.42.39.39 1.03.39 1.42 0 .39-.39.39-1.03 0-1.42-.39-.39-1.03-.39-1.42 0zM13.59 6.17c-.39.39-.39 1.03 0 1.42.39.39 1.03.39 1.42 0 .39-.39.39-1.03 0-1.42-.39-.39-1.03-.39-1.42 0zM16.5 12c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5.67 1.5 1.5 1.5 1.5-.67 1.5-1.5zM12 1L2 6v2c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V6l-10-5zm0 3.18L19.82 8 12 10.82 4.18 8 12 4.18z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

/* K8s Manager Icon - Kubernetes helm wheel */
.k8s-manager-icon {
    position: relative;
    width: 32px;
    height: 32px;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23326CE5'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm-5.5-2.5l7.51-3.49L17.5 6.5 9.99 9.99 6.5 17.5zm5.5-6.6c.61 0 1.1.49 1.1 1.1s-.49 1.1-1.1 1.1-1.1-.49-1.1-1.1.49-1.1 1.1-1.1z'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-position: center;
    background-repeat: no-repeat;
}

.k8s-manager-icon-small {
    position: relative;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23326CE5'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm-5.5-2.5l7.51-3.49L17.5 6.5 9.99 9.99 6.5 17.5zm5.5-6.6c.61 0 1.1.49 1.1 1.1s-.49 1.1-1.1 1.1-1.1-.49-1.1-1.1.49-1.1 1.1-1.1z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

/* Orchestrator Logs Icon - terminal/console style */
.orchestrator-logs-icon {
    position: relative;
    width: 32px;
    height: 32px;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000080'%3E%3Cpath d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zM4 6h16v2H4V6zm0 12V10h16v8H4z'/%3E%3Cpath d='M5 11h2v2H5zm0 3h2v2H5zm3-3h2v2H8zm0 3h2v2H8zm3-3h6v2h-6zm0 3h6v2h-6z'/%3E%3C/svg%3E");
    background-size: 24px 24px;
    background-position: center;
    background-repeat: no-repeat;
}

.orchestrator-logs-icon-small {
    position: relative;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000080'%3E%3Cpath d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zM4 6h16v2H4V6zm0 12V10h16v8H4z'/%3E%3Cpath d='M5 11h2v2H5zm0 3h2v2H5zm3-3h2v2H8zm0 3h2v2H8zm3-3h6v2h-6zm0 3h6v2h-6z'/%3E%3C/svg%3E");
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.logout-icon-small::before {
    content: "";
    position: absolute;
    width: 8px;
    height: 10px;
    background: #c0c0c0;
    border: 1px solid #000;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 1px 0 0 0 #808080 inset;
}

.logout-icon-small::after {
    content: "";
    position: absolute;
    width: 4px;
    height: 2px;
    background: #000;
    top: 30%;
    left: 50%;
    transform: translateX(-50%);
}

.icon-label {
    color: white;
    font-size: 11px;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
    padding: 2px 4px;
    margin-top: 4px;
    text-align: center;
    word-wrap: break-word;
    max-width: 72px;
}

/* Windows - Windows 95 style */
.window {
    position: absolute;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    min-width: 400px;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 1000;
    box-shadow: 
        inset -1px -1px 0px #000,
        inset 1px 1px 0px #fff,
        2px 2px 4px rgba(0, 0, 0, 0.5);
}

.window.active {
    /* z-index is managed dynamically by JavaScript */
}

.window-header {
    background: linear-gradient(to bottom, #0084c8, #0054a4);
    padding: 4px 6px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: move;
    border-bottom: 2px inset #c0c0c0;
    user-select: none;
    color: white;
    font-weight: bold;
    font-size: 11px;
    height: 20px;
}

.window-title {
    font-weight: bold;
    font-size: 11px;
    color: white;
    flex: 1;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}

.window-controls {
    display: flex;
    gap: 2px;
}

.window-control {
    width: 16px;
    height: 14px;
    border: 1px outset #c0c0c0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: bold;
    background: #c0c0c0;
    color: #000;
    padding: 0;
    line-height: 1;
}

.window-control:active {
    border: 1px inset #c0c0c0;
}

.window-control:hover {
    background-color: #d4d0c8;
}

.window-control.close {
    font-size: 10px;
}

.window-control.close:hover {
    background-color: #c0c0c0;
}

.window-content {
    flex: 1;
    padding: 8px;
    overflow: auto;
    background: #c0c0c0;
    border: 2px inset #c0c0c0;
}

/* Remove padding and overflow for K8s windows that handle their own layout */
.window-content:has(.k8s-manager),
.window-content:has(.k8s-logs-viewer),
.window-content:has(.k8s-yaml-editor),
.window-content:has(.k8s-resource-detail) {
    padding: 0;
    overflow: hidden;
}

/* Window content scrollbars - Windows 95 style */
.window-content::-webkit-scrollbar {
    width: 16px;
    height: 16px;
}

.window-content::-webkit-scrollbar-track {
    background: #c0c0c0;
    border: 1px solid #808080;
}

.window-content::-webkit-scrollbar-thumb {
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
}

.window-content::-webkit-scrollbar-thumb:hover {
    background: #d4d0c8;
}

.window-content::-webkit-scrollbar-thumb:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
}

.window-content::-webkit-scrollbar-corner {
    background: #c0c0c0;
}

/* Taskbar - Windows 95 style */
.taskbar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 30px;
    background: #c0c0c0;
    border-top: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    display: flex;
    align-items: center;
    padding: 2px;
    z-index: 10000;
    box-shadow: none;
}

.taskbar-start {
    margin-right: 8px;
}

.start-button {
    width: 75px;
    height: 22px;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-weight: bold;
    font-size: 11px;
    cursor: pointer;
    padding: 2px 6px;
    box-shadow: none;
    position: relative;
}

.start-button .start-text {
    margin-left: 2px;
}

.start-button:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
    padding: 3px 5px 1px 7px;
}

.start-button:hover {
    background: #d4d0c8;
}

.start-button.active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
    padding: 3px 5px 1px 7px;
}

/* Start Menu */
.start-menu {
    position: absolute;
    bottom: 30px;
    left: 2px;
    width: 200px;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    display: none;
    z-index: 20000;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.start-menu.show {
    display: block;
}

.start-menu-header {
    background: linear-gradient(to bottom, #000080, #0000ff);
    color: white;
    padding: 4px 8px;
    font-weight: bold;
    font-size: 11px;
    height: 20px;
    display: flex;
    align-items: center;
}

.start-menu-items {
    padding: 2px 0;
}

.start-menu-item {
    display: flex;
    align-items: center;
    padding: 4px 8px;
    cursor: pointer;
    font-size: 11px;
    color: #000;
    user-select: none;
}

.start-menu-item:hover {
    background: #000080;
    color: white;
}

.start-menu-item .start-menu-icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 8px;
    font-size: 12px;
    position: relative;
}

.start-menu-item .start-menu-text {
    flex: 1;
}

.start-menu-divider {
    height: 2px;
    background: #808080;
    margin: 2px 4px;
    border-top: 1px solid #ffffff;
}

.taskbar-windows {
    flex: 1;
    display: flex;
    gap: 4px;
    overflow-x: auto;
    overflow-y: hidden;
}

.taskbar-window {
    min-width: 150px;
    max-width: 250px;
    height: 22px;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    padding: 0 8px;
    display: flex;
    align-items: center;
    cursor: pointer;
    color: #000;
    font-size: 11px;
    margin: 0 2px;
    box-shadow: none;
}

.taskbar-window:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
}

.taskbar-window:hover {
    background: #d4d0c8;
}

.taskbar-window.active {
    background: #c0c0c0;
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
}

.taskbar-tray {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 8px;
}

.tray-icon {
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 14px;
    cursor: pointer;
}

/* Window Content Styles */
.window-content h2 {
    margin-bottom: 20px;
    color: #333;
    font-size: 20px;
}

.window-content .section {
    margin-bottom: 30px;
}

.window-content table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin-top: 10px;
    border: 2px inset #c0c0c0;
    background: #fff;
}

.window-content table th,
.window-content table td {
    padding: 4px 8px;
    text-align: left;
    border-right: 1px solid #808080;
    border-bottom: 1px solid #808080;
    font-size: 11px;
}

.window-content table th {
    background-color: #c0c0c0;
    font-weight: bold;
    color: #000;
    border-bottom: 2px solid #808080;
}

.window-content table tr:hover {
    background-color: #e0e0e0;
}

.window-content table tr:last-child td {
    border-bottom: none;
}

.window-content table th:last-child,
.window-content table td:last-child {
    border-right: none;
}

.btn-group {
    display: flex;
    gap: 10px;
    margin-top: 15px;
}

.btn-small,
button.btn-small,
input[type="button"].btn-small,
input[type="submit"].btn-small {
    padding: 3px 8px;
    font-size: 11px;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    background: #c0c0c0;
    cursor: pointer;
    color: #000;
    font-family: 'MS Sans Serif', sans-serif;
    font-weight: bold;
    min-width: 75px;
    box-shadow: none;
    outline: none;
}

.btn-small:active,
button.btn-small:active,
input[type="button"].btn-small:active,
input[type="submit"].btn-small:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
    padding: 4px 7px 2px 9px; /* Shift text for pressed effect */
}

.btn-small:hover,
button.btn-small:hover,
input[type="button"].btn-small:hover,
input[type="submit"].btn-small:hover {
    background-color: #d4d0c8;
}

.btn-small.primary {
    background-color: #c0c0c0;
    color: #000;
}

.btn-small.primary:hover {
    background-color: #d4d0c8;
}

.btn-small.danger {
    background-color: #c0c0c0;
    color: #000;
}

.btn-small.danger:hover {
    background-color: #d4d0c8;
}

.status-badge {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
}

.status-badge.success {
    background-color: #d4edda;
    color: #155724;
}

.status-badge.warning {
    background-color: #fff3cd;
    color: #856404;
}

.status-badge.error {
    background-color: #f8d7da;
    color: #721c24;
}

.status-badge.info {
    background-color: #d1ecf1;
    color: #0c5460;
}

.loading {
    text-align: center;
    padding: 20px;
    color: #666;
}

.form-row {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
}

.form-row .form-group {
    flex: 1;
    margin-bottom: 0;
}

.dialog-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    /* z-index is managed dynamically by JavaScript */
    pointer-events: auto;
}

.dialog {
    /* z-index is managed dynamically by JavaScript */
    position: fixed !important;
}

.dialog-content {
    padding: 12px;
}

/* Message Box Styles */
.message-box {
    display: flex;
    gap: 12px;
    padding: 8px;
}

.message-box-icon {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    border: 2px outset #c0c0c0;
    background: #c0c0c0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.info-icon::before {
    content: "i";
    font-size: 24px;
    font-weight: bold;
    color: #000080;
    font-style: italic;
    font-family: serif;
}

.warning-icon::before {
    content: "!";
    font-size: 24px;
    font-weight: bold;
    color: #ffff00;
    text-shadow: 1px 1px 0 #000;
}

.error-icon::before {
    content: "×";
    font-size: 24px;
    font-weight: bold;
    color: #ff0000;
}

.message-box-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.message-box-text {
    flex: 1;
    font-size: 11px;
    color: #000;
    line-height: 1.4;
}

.message-box-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 8px;
}

.modal {
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    padding: 8px;
    max-width: 500px;
    width: 90%;
    max-height: 80vh;
    overflow-y: auto;
    box-shadow: none;
}

.modal h3 {
    margin-bottom: 20px;
    color: #333;
}

/* Removed modal-actions - using inline button groups in dialogs */

/* ==================== DOMAIN MANAGEMENT STYLES ==================== */

.domains-window {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
}

.domains-tabs {
    display: flex;
    gap: 2px;
    background: #c0c0c0;
    padding: 4px 4px 0 4px;
    border-bottom: 2px solid #808080;
    flex-shrink: 0;
}

.domains-tab {
    padding: 6px 16px;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-bottom: none;
    cursor: pointer;
    font-size: 11px;
    font-weight: bold;
    color: #000;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: -2px;
    position: relative;
    min-width: 120px;
}

.domains-tab:hover {
    background: #d4d0c8;
}

.domains-tab.active {
    background: #fff;
    border-bottom: 2px solid #fff;
    z-index: 1;
}

.domains-tab .tab-icon {
    font-size: 14px;
}

.domains-tab-content {
    flex: 1;
    background: #fff;
    border: 2px inset #c0c0c0;
    overflow: hidden;
    padding: 0;
    min-height: 0;
}

.tab-panel {
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 12px;
}

/* Empty state styles */
.empty-state {
    text-align: center;
    padding: 40px 20px;
    color: #666;
}

.empty-state.small {
    padding: 20px;
}

.empty-state-icon {
    font-size: 48px;
    margin-bottom: 15px;
}

.empty-state h3 {
    margin-bottom: 10px;
    color: #333;
    font-size: 16px;
}

.empty-state p {
    color: #666;
    font-size: 12px;
}

/* Tenant domains UI */
.tenant-domains-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #c0c0c0;
    flex-shrink: 0;
}

.tenant-domains-header h3 {
    margin: 0;
    font-size: 14px;
    color: #333;
}

.tenant-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(100% - 60px);
    padding-right: 4px;
}

.tenant-domain-card {
    background: #f8f8f8;
    border: 2px outset #c0c0c0;
    padding: 12px;
    cursor: pointer;
    transition: all 0.1s ease;
}

.tenant-domain-card:hover {
    background: #e8e8e8;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}

.tenant-domain-card:active {
    border: 2px inset #c0c0c0;
}

.tenant-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.tenant-card-name {
    font-weight: bold;
    font-size: 13px;
    color: #000080;
}

.tenant-card-info {
    margin-bottom: 10px;
}

.info-row {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    padding: 2px 0;
}

.info-label {
    color: #666;
}

.info-value {
    color: #333;
    font-weight: 500;
}

.tenant-card-actions {
    text-align: right;
}

/* Tenant domains detail view */
.tenant-domains-detail {
    height: 100%;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.detail-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #c0c0c0;
    flex-shrink: 0;
}

.detail-header h3 {
    flex: 1;
    margin: 0;
    font-size: 16px;
    color: #000080;
}

.domains-summary {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
    flex-shrink: 0;
}

.summary-card {
    background: linear-gradient(135deg, #e0e0e0, #f0f0f0);
    border: 2px outset #c0c0c0;
    padding: 15px 25px;
    text-align: center;
    min-width: 100px;
}

.summary-value {
    font-size: 24px;
    font-weight: bold;
    color: #000080;
}

.summary-label {
    font-size: 11px;
    color: #666;
    margin-top: 4px;
}

.domains-list-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 12px;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    min-height: 0;
    padding-right: 4px;
}

.domain-card {
    background: #fff;
    border: 2px outset #c0c0c0;
    padding: 12px;
}

.domain-card.active {
    border-left: 4px solid #00a000;
}

.domain-card.pending_validation {
    border-left: 4px solid #ffc107;
}

.domain-card.error {
    border-left: 4px solid #dc3545;
}

.domain-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.domain-name {
    font-weight: bold;
    font-size: 13px;
    color: #000;
    word-break: break-all;
}

.domain-card-info {
    margin-bottom: 10px;
    padding: 8px;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
}

.domain-card-actions {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

/* Cloudflare zones UI */
.cloudflare-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #c0c0c0;
    flex-shrink: 0;
}

.cf-status {
    display: flex;
    align-items: center;
    gap: 10px;
}

.zone-count {
    font-size: 12px;
    color: #666;
}

.zones-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: calc(100% - 60px);
    overflow-y: auto;
    overflow-x: hidden;
}

.zone-card {
    background: #fff;
    border: 2px outset #c0c0c0;
}

.zone-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    background: linear-gradient(180deg, #e8e8e8, #d0d0d0);
    cursor: pointer;
    user-select: none;
}

.zone-card-header:hover {
    background: linear-gradient(180deg, #f0f0f0, #e0e0e0);
}

.zone-info {
    display: flex;
    align-items: center;
    gap: 10px;
}

.zone-toggle {
    font-size: 10px;
    width: 14px;
    color: #666;
}

.zone-name {
    font-weight: bold;
    font-size: 13px;
    color: #000080;
}

.zone-plan {
    font-size: 10px;
    color: #666;
    background: #f0f0f0;
    padding: 2px 6px;
    border-radius: 3px;
}

.zone-actions {
    display: flex;
    gap: 6px;
}

.zone-records {
    padding: 12px;
    background: #fafafa;
    border-top: 1px solid #c0c0c0;
    max-height: 400px;
    overflow-y: auto;
    overflow-x: auto;
}

.records-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e0e0e0;
}

.record-type-filter {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
}

.record-type-filter select {
    padding: 3px 6px;
    border: 2px inset #c0c0c0;
    font-size: 11px;
    background: #fff;
}

.records-count {
    font-size: 11px;
    color: #666;
}

/* DNS records table */
.dns-records-table-container {
    overflow-x: auto;
    overflow-y: visible;
    max-width: 100%;
}

.dns-records-table {
    width: 100%;
    min-width: 700px;
    border-collapse: separate;
    border-spacing: 0;
    border: 2px inset #c0c0c0;
    background: #fff;
    font-size: 11px;
}

.dns-records-table th,
.dns-records-table td {
    padding: 6px 8px;
    text-align: left;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
}

.dns-records-table th {
    background: #e0e0e0;
    font-weight: bold;
    color: #333;
    position: sticky;
    top: 0;
}

.dns-records-table tr:hover {
    background: #f5f5f5;
}

.dns-records-table tr:last-child td {
    border-bottom: none;
}

.record-name {
    font-family: 'Consolas', 'Courier New', monospace;
    color: #000080;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.record-content {
    font-family: 'Consolas', 'Courier New', monospace;
    font-size: 10px;
    color: #333;
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Record type badges */
.record-type-badge {
    display: inline-block;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 10px;
    font-weight: bold;
    color: #fff;
    min-width: 45px;
    text-align: center;
}

.record-type-badge.type-a {
    background: #007bff;
}

.record-type-badge.type-aaaa {
    background: #6610f2;
}

.record-type-badge.type-cname {
    background: #28a745;
}

.record-type-badge.type-txt {
    background: #fd7e14;
}

.record-type-badge.type-mx {
    background: #e83e8c;
}

.record-type-badge.type-ns {
    background: #20c997;
}

.record-type-badge.type-srv {
    background: #6c757d;
}

.record-type-badge.type-caa {
    background: #17a2b8;
}

.record-type-badge.type-other {
    background: #6c757d;
}

/* Config info box */
.config-info {
    font-family: 'Consolas', 'Courier New', monospace;
    font-size: 11px;
    line-height: 1.6;
}

.config-info code {
    background: #fff;
    padding: 2px 4px;
    border: 1px solid #c0c0c0;
}

/* Scrollbar styling - Windows 95 style */
.tab-panel::-webkit-scrollbar,
.zones-list::-webkit-scrollbar,
.zone-records::-webkit-scrollbar,
.tenant-cards-grid::-webkit-scrollbar,
.domains-list-grid::-webkit-scrollbar,
.dns-records-table-container::-webkit-scrollbar {
    width: 16px;
    height: 16px;
}

.tab-panel::-webkit-scrollbar-track,
.zones-list::-webkit-scrollbar-track,
.zone-records::-webkit-scrollbar-track,
.tenant-cards-grid::-webkit-scrollbar-track,
.domains-list-grid::-webkit-scrollbar-track,
.dns-records-table-container::-webkit-scrollbar-track {
    background: #c0c0c0;
    border: 1px solid #808080;
}

.tab-panel::-webkit-scrollbar-thumb,
.zones-list::-webkit-scrollbar-thumb,
.zone-records::-webkit-scrollbar-thumb,
.tenant-cards-grid::-webkit-scrollbar-thumb,
.domains-list-grid::-webkit-scrollbar-thumb,
.dns-records-table-container::-webkit-scrollbar-thumb {
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
}

.tab-panel::-webkit-scrollbar-thumb:hover,
.zones-list::-webkit-scrollbar-thumb:hover,
.zone-records::-webkit-scrollbar-thumb:hover,
.tenant-cards-grid::-webkit-scrollbar-thumb:hover,
.domains-list-grid::-webkit-scrollbar-thumb:hover,
.dns-records-table-container::-webkit-scrollbar-thumb:hover {
    background: #d4d0c8;
}

.tab-panel::-webkit-scrollbar-thumb:active,
.zones-list::-webkit-scrollbar-thumb:active,
.zone-records::-webkit-scrollbar-thumb:active,
.tenant-cards-grid::-webkit-scrollbar-thumb:active,
.domains-list-grid::-webkit-scrollbar-thumb:active,
.dns-records-table-container::-webkit-scrollbar-thumb:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
}

.tab-panel::-webkit-scrollbar-corner,
.zones-list::-webkit-scrollbar-corner,
.zone-records::-webkit-scrollbar-corner {
    background: #c0c0c0;
}

/* Firefox scrollbar styling */
.tab-panel,
.zones-list,
.zone-records,
.tenant-cards-grid,
.domains-list-grid,
.dns-records-table-container,
.window-content {
    scrollbar-width: auto;
    scrollbar-color: #c0c0c0 #808080;
}

/* Orchestrator Logs Container Styling */
#orch-logs-content,
.orch-logs-content {
    /* Ensure scrollbar is always visible */
    overflow-y: scroll !important;
    overflow-x: auto !important;
    
    /* Firefox scrollbar */
    scrollbar-width: auto;
    scrollbar-color: #c0c0c0 #404040;
}

/* Orchestrator Logs Scrollbar Styling - Windows 95 style */
#orch-logs-content::-webkit-scrollbar,
.orch-logs-content::-webkit-scrollbar {
    width: 16px;
    height: 16px;
    display: block !important;
}

#orch-logs-content::-webkit-scrollbar-track,
.orch-logs-content::-webkit-scrollbar-track {
    background: #c0c0c0;
    border: 1px solid #808080;
}

#orch-logs-content::-webkit-scrollbar-thumb,
.orch-logs-content::-webkit-scrollbar-thumb {
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    min-height: 30px;
}

#orch-logs-content::-webkit-scrollbar-thumb:hover,
.orch-logs-content::-webkit-scrollbar-thumb:hover {
    background: #d4d0c8;
}

#orch-logs-content::-webkit-scrollbar-thumb:active,
.orch-logs-content::-webkit-scrollbar-thumb:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
}

#orch-logs-content::-webkit-scrollbar-corner,
.orch-logs-content::-webkit-scrollbar-corner {
    background: #c0c0c0;
}

/* Scrollbar buttons (arrows) */
#orch-logs-content::-webkit-scrollbar-button,
.orch-logs-content::-webkit-scrollbar-button {
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    border-right-color: #808080;
    border-bottom-color: #808080;
    display: block;
    height: 16px;
    width: 16px;
}

#orch-logs-content::-webkit-scrollbar-button:hover,
.orch-logs-content::-webkit-scrollbar-button:hover {
    background: #d4d0c8;
}

#orch-logs-content::-webkit-scrollbar-button:active,
.orch-logs-content::-webkit-scrollbar-button:active {
    border: 2px inset #c0c0c0;
    border-top-color: #808080;
    border-left-color: #808080;
    border-right-color: #ffffff;
    border-bottom-color: #ffffff;
}

/* Up and down arrows styling */
#orch-logs-content::-webkit-scrollbar-button:vertical:decrement,
.orch-logs-content::-webkit-scrollbar-button:vertical:decrement {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 5l4 6H4z' fill='%23000'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px 8px;
}

#orch-logs-content::-webkit-scrollbar-button:vertical:increment,
.orch-logs-content::-webkit-scrollbar-button:vertical:increment {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 11l-4-6h8z' fill='%23000'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px 8px;
}

#orch-logs-content::-webkit-scrollbar-button:horizontal:decrement,
.orch-logs-content::-webkit-scrollbar-button:horizontal:decrement {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 8l6-4v8z' fill='%23000'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px 8px;
}

#orch-logs-content::-webkit-scrollbar-button:horizontal:increment,
.orch-logs-content::-webkit-scrollbar-button:horizontal:increment {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M11 8l-6 4V4z' fill='%23000'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8px 8px;
}

/* ==================== ADVANCED REPOSITORY MANAGEMENT STYLES ==================== */

/* Repository Stats Bar */
.repo-stats {
    margin-bottom: 15px;
}

.stats-bar {
    display: flex;
    gap: 20px;
    padding: 12px 15px;
    background: linear-gradient(180deg, #e8e8e8, #d8d8d8);
    border: 2px outset #c0c0c0;
    margin-bottom: 15px;
}

.stat-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 80px;
}

.stat-value {
    font-size: 20px;
    font-weight: bold;
    color: #000080;
}

.stat-value.tenant-linked {
    color: #00a000;
}

.stat-label {
    font-size: 10px;
    color: #666;
    text-transform: uppercase;
}

/* Repository Cards Grid */
.repo-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 12px;
    padding: 4px;
}

.repo-card {
    background: #fff;
    border: 2px outset #c0c0c0;
    cursor: pointer;
    transition: all 0.15s ease;
    display: flex;
    flex-direction: column;
}

.repo-card:hover {
    background: #f8f8ff;
    box-shadow: 2px 2px 8px rgba(0, 0, 128, 0.15);
}

.repo-card:active {
    border: 2px inset #c0c0c0;
}

.repo-card.has-tenant {
    border-left: 4px solid #00a000;
}

.repo-card.archived {
    opacity: 0.7;
}

.repo-card-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 10px 12px 8px;
    border-bottom: 1px solid #e8e8e8;
    background: linear-gradient(180deg, #f4f4f4, #e8e8e8);
}

.repo-card-title {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

.repo-avatar {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: 1px solid #c0c0c0;
    flex-shrink: 0;
}

.repo-name {
    font-weight: bold;
    font-size: 13px;
    color: #000080;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.repo-badges {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.badge {
    display: inline-block;
    padding: 2px 6px;
    font-size: 9px;
    font-weight: bold;
    border-radius: 3px;
    text-transform: uppercase;
}

.tenant-badge {
    background: #d4edda;
    color: #155724;
    cursor: pointer;
}

.tenant-badge:hover {
    background: #c3e6cb;
}

.tenant-badge .tenant-icon {
    font-size: 10px;
}

.private-badge {
    background: #fff3cd;
    color: #856404;
}

.public-badge {
    background: #d1ecf1;
    color: #0c5460;
}

.archived-badge {
    background: #e2e3e5;
    color: #383d41;
}

.template-badge {
    background: #d6d8db;
    color: #1b1e21;
}

.lang-badge {
    color: #fff;
    padding: 2px 8px;
}

.repo-card-body {
    padding: 10px 12px;
    flex: 1;
}

.repo-description {
    font-size: 11px;
    color: #444;
    line-height: 1.4;
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.repo-topics {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}

.topic-tag {
    background: #e8f4fd;
    color: #0366d6;
    padding: 2px 6px;
    font-size: 10px;
    border-radius: 10px;
    border: 1px solid #c8e1ff;
}

.topic-more {
    color: #666;
    font-size: 10px;
    padding: 2px 4px;
}

.repo-card-footer {
    padding: 8px 12px;
    border-top: 1px solid #e8e8e8;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #fafafa;
}

.repo-stats-row {
    display: flex;
    gap: 8px;
    align-items: center;
}

.stat-mini {
    font-size: 10px;
    color: #666;
}

.repo-updated {
    font-size: 10px;
    color: #888;
}

.repo-card-actions {
    padding: 8px 12px;
    border-top: 1px solid #e0e0e0;
    display: flex;
    gap: 6px;
    background: #f0f0f0;
}

/* Table view styles */
.repo-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 2px inset #c0c0c0;
    background: #fff;
}

.repo-table th,
.repo-table td {
    padding: 6px 10px;
    text-align: left;
    border-bottom: 1px solid #e0e0e0;
    font-size: 11px;
}

.repo-table th {
    background: #e0e0e0;
    font-weight: bold;
    position: sticky;
    top: 0;
}

.repo-table tr:hover {
    background: #f5f5ff;
}

.repo-table tr.has-tenant {
    background: #f0fff0;
}

.repo-table tr.archived {
    opacity: 0.7;
}

.repo-name-cell {
    display: flex;
    align-items: center;
    gap: 8px;
}

.repo-avatar-small {
    width: 20px;
    height: 20px;
    border-radius: 3px;
    border: 1px solid #c0c0c0;
}

.badge-small {
    font-size: 10px;
    margin-left: 4px;
}

.lang-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: 4px;
}

.no-tenant {
    color: #999;
}

.clickable {
    cursor: pointer;
    color: #000080;
}

.clickable:hover {
    text-decoration: underline;
}

.actions-cell {
    white-space: nowrap;
}

.btn-tiny {
    padding: 2px 6px;
    font-size: 10px;
    min-width: auto;
    border: 1px outset #c0c0c0;
    background: #c0c0c0;
    cursor: pointer;
    text-decoration: none;
    color: #000;
    display: inline-block;
}

.btn-tiny:hover {
    background: #d0d0d0;
}

.btn-tiny.primary {
    background: #c8e0ff;
}

/* Repository Detail View */
.repo-detail-container {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.repo-detail-header {
    padding: 15px;
    background: #f8f8f8;
    border-bottom: 2px solid #c0c0c0;
}

.repo-header-main {
    display: flex;
    gap: 15px;
    align-items: flex-start;
}

.repo-header-avatar {
    width: 48px;
    height: 48px;
    border-radius: 6px;
    border: 2px solid #c0c0c0;
}

.repo-header-info {
    flex: 1;
}

.repo-header-info h2 {
    margin: 0 0 5px;
    font-size: 18px;
    color: #000080;
}

.repo-desc-full {
    font-size: 12px;
    color: #555;
    margin-bottom: 8px;
}

.repo-header-badges {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.repo-header-actions {
    display: flex;
    gap: 8px;
}

.tenant-info-box {
    margin-top: 12px;
    padding: 10px;
    background: #d4edda;
    border: 2px solid #c3e6cb;
    display: flex;
    align-items: center;
}

.tenant-info-box strong {
    color: #155724;
}

.tenant-name-link {
    color: #000080;
    cursor: pointer;
    font-weight: bold;
    margin-left: 8px;
}

.tenant-name-link:hover {
    text-decoration: underline;
}

.no-tenant-box {
    margin-top: 12px;
    padding: 10px;
    background: #f8f9fa;
    border: 2px solid #dee2e6;
    display: flex;
    align-items: center;
}

/* Tabs */
.repo-detail-tabs {
    display: flex;
    background: #c0c0c0;
    padding: 4px 8px 0;
    border-bottom: 2px solid #808080;
}

.tab-btn {
    padding: 6px 16px;
    background: #d0d0d0;
    border: 2px outset #c0c0c0;
    border-bottom: none;
    cursor: pointer;
    font-size: 11px;
    font-weight: bold;
    color: #333;
    margin-right: 2px;
    margin-bottom: -2px;
}

.tab-btn:hover {
    background: #e0e0e0;
}

.tab-btn.active {
    background: #fff;
    border-bottom: 2px solid #fff;
    color: #000080;
}

.repo-detail-content {
    flex: 1;
    overflow: hidden;
    background: #fff;
}

.tab-panel {
    display: none;
    height: 100%;
    overflow-y: auto;
    padding: 15px;
}

.tab-panel.active {
    display: block;
}

/* Overview Grid */
.overview-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.overview-section {
    background: #f8f8f8;
    border: 2px inset #c0c0c0;
    padding: 12px;
}

.overview-section h3 {
    margin: 0 0 12px;
    font-size: 13px;
    color: #000080;
    border-bottom: 1px solid #c0c0c0;
    padding-bottom: 6px;
}

.overview-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.overview-stat {
    text-align: center;
    padding: 10px;
    background: #fff;
    border: 1px solid #ddd;
}

.overview-stat-icon {
    font-size: 18px;
    display: block;
    margin-bottom: 4px;
}

.overview-stat-value {
    font-size: 20px;
    font-weight: bold;
    color: #000080;
    display: block;
}

.overview-stat-label {
    font-size: 10px;
    color: #666;
    text-transform: uppercase;
}

.info-table {
    width: 100%;
    border-collapse: collapse;
}

.info-table th,
.info-table td {
    padding: 4px 8px;
    font-size: 11px;
    text-align: left;
    border: none;
}

.info-table th {
    width: 120px;
    background: transparent;
    color: #666;
    font-weight: normal;
}

.info-table td {
    color: #000;
}

.info-table code,
code.small-code {
    font-size: 10px;
    background: #fff;
    padding: 2px 4px;
    border: 1px solid #ddd;
    word-break: break-all;
}

.feature-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.feature-item {
    font-size: 11px;
    padding: 4px 8px;
    background: #fff;
    border: 1px solid #ddd;
}

.feature-item.enabled {
    color: #155724;
    background: #d4edda;
    border-color: #c3e6cb;
}

.feature-item.disabled {
    color: #856404;
    background: #fff3cd;
    border-color: #ffeeba;
}

.owner-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px;
    background: #fff;
    border: 1px solid #ddd;
}

.owner-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 2px solid #c0c0c0;
}

.owner-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.owner-type {
    font-size: 10px;
    color: #666;
    text-transform: uppercase;
}

.owner-link {
    font-size: 11px;
    color: #0366d6;
}

.topics-section {
    grid-column: span 2;
}

.topics-list {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.topic-tag-large {
    background: #e8f4fd;
    color: #0366d6;
    padding: 4px 10px;
    font-size: 11px;
    border-radius: 12px;
    border: 1px solid #c8e1ff;
}

/* Commits List */
.commits-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.commit-item {
    display: flex;
    gap: 12px;
    padding: 10px;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
    border-left: 3px solid #0366d6;
}

.commit-avatar img {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #c0c0c0;
}

.commit-avatar-placeholder {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #e0e0e0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #888;
}

.commit-content {
    flex: 1;
    min-width: 0;
}

.commit-title {
    font-size: 12px;
    font-weight: bold;
    color: #000;
    margin-bottom: 4px;
    line-height: 1.4;
}

.verified-badge {
    display: inline-block;
    background: #d4edda;
    color: #155724;
    font-size: 10px;
    padding: 1px 4px;
    border-radius: 3px;
    margin-left: 6px;
}

.commit-body {
    font-size: 11px;
    color: #666;
    margin-bottom: 6px;
    line-height: 1.4;
}

.commit-meta {
    display: flex;
    gap: 12px;
    align-items: center;
    font-size: 10px;
    color: #666;
}

.commit-author {
    font-weight: bold;
    color: #333;
}

.commit-sha {
    font-family: monospace;
    background: #f0f0f0;
    padding: 2px 6px;
    border: 1px solid #ddd;
    cursor: pointer;
}

.commit-sha:hover {
    background: #e0e0e0;
}

.commit-link {
    color: #0366d6;
}

/* Branches List */
.branches-header {
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e0e0e0;
}

.branches-count {
    font-size: 12px;
    color: #666;
    font-weight: bold;
}

.branches-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.branch-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
}

.branch-item.protected {
    background: #fff3cd;
    border-color: #ffeeba;
}

.branch-icon {
    font-size: 14px;
}

.branch-name {
    flex: 1;
    font-family: monospace;
    font-size: 12px;
    color: #000080;
}

.protected-badge {
    background: #ffc107;
    color: #000;
    padding: 2px 6px;
    font-size: 9px;
    font-weight: bold;
    border-radius: 3px;
}

.branch-sha {
    font-family: monospace;
    font-size: 10px;
    color: #666;
    background: #fff;
    padding: 2px 6px;
    border: 1px solid #ddd;
}

/* Contributors Grid */
.contributors-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 10px;
}

.contributor-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
    position: relative;
}

.contributor-rank {
    position: absolute;
    top: 4px;
    right: 8px;
    font-size: 10px;
    color: #888;
    font-weight: bold;
}

.contributor-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid #c0c0c0;
}

.contributor-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.contributor-name {
    font-size: 12px;
    color: #000080;
}

.contributor-commits {
    font-size: 10px;
    color: #666;
}

.contributor-link {
    font-size: 10px;
    color: #0366d6;
}

/* Releases and Tags */
.releases-section,
.tags-section {
    margin-bottom: 20px;
}

.releases-section h3,
.tags-section h3 {
    font-size: 14px;
    color: #000080;
    margin-bottom: 12px;
    padding-bottom: 6px;
    border-bottom: 1px solid #e0e0e0;
}

.releases-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.release-item {
    padding: 12px;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
    border-left: 3px solid #28a745;
}

.release-item.prerelease {
    border-left-color: #ffc107;
}

.release-item.draft {
    border-left-color: #6c757d;
    opacity: 0.8;
}

.release-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
}

.release-name {
    font-weight: bold;
    font-size: 13px;
    color: #000;
}

.release-tag {
    font-family: monospace;
    font-size: 11px;
    background: #e0e0e0;
    padding: 2px 6px;
    border-radius: 3px;
}

.prerelease-badge {
    background: #ffc107;
    color: #000;
}

.draft-badge {
    background: #6c757d;
    color: #fff;
}

.release-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 10px;
    color: #666;
    margin-bottom: 6px;
}

.release-author-avatar {
    width: 16px;
    height: 16px;
    border-radius: 50%;
}

.release-body {
    font-size: 11px;
    color: #555;
    line-height: 1.4;
    padding-top: 8px;
    border-top: 1px solid #e0e0e0;
    margin-top: 8px;
}

.tags-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 8px;
}

.tag-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 10px;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
}

.tag-name {
    font-family: monospace;
    font-size: 11px;
    color: #000080;
}

.tag-sha {
    font-family: monospace;
    font-size: 10px;
    color: #666;
    background: #fff;
    padding: 1px 4px;
    border: 1px solid #ddd;
}

.empty-message {
    color: #888;
    font-style: italic;
    padding: 20px;
    text-align: center;
}

/* =============================================================================
   KUBERNETES MANAGER STYLES
   ============================================================================= */

/* Clusters Window Tabs */
.clusters-window {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
}

.clusters-tabs {
    display: flex;
    gap: 2px;
    background: #c0c0c0;
    padding: 4px 4px 0 4px;
    border-bottom: 2px solid #808080;
    flex-shrink: 0;
}

.clusters-tab {
    padding: 6px 16px;
    background: #c0c0c0;
    border: 2px outset #c0c0c0;
    border-bottom: none;
    cursor: pointer;
    font-size: 11px;
    font-weight: bold;
    color: #000;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: -2px;
    position: relative;
    min-width: 100px;
}

.clusters-tab:hover {
    background: #d4d0c8;
}

.clusters-tab.active {
    background: #fff;
    border-bottom: 2px solid #fff;
    z-index: 1;
}

.clusters-tab .tab-icon {
    font-size: 14px;
}

.clusters-tab-content {
    flex: 1;
    background: #fff;
    border: 2px inset #c0c0c0;
    overflow: hidden;
    padding: 0;
    min-height: 0;
}

/* Nodes Grid */
.nodes-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 12px;
    padding: 4px;
}

.node-card {
    background: #fff;
    border: 2px outset #c0c0c0;
    transition: all 0.15s ease;
}

.node-card:hover {
    box-shadow: 2px 2px 8px rgba(0, 0, 128, 0.15);
}

.node-card.node-not-ready {
    border-left: 4px solid #dc3545;
}

.node-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px 8px;
    border-bottom: 1px solid #e8e8e8;
    background: linear-gradient(180deg, #f4f4f4, #e8e8e8);
}

.node-card-title {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

.node-icon {
    font-size: 18px;
}

.node-name {
    font-weight: bold;
    font-size: 13px;
    color: #000080;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.node-card-body {
    padding: 10px 12px;
}

.node-info-row {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    padding: 3px 0;
    border-bottom: 1px dotted #e0e0e0;
}

.node-info-row:last-child {
    border-bottom: none;
}

.node-info-label {
    color: #666;
}

.node-info-value {
    color: #333;
    font-weight: 500;
}

.node-taints {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #e0e0e0;
}

.taint-badge {
    display: inline-block;
    padding: 2px 6px;
    font-size: 9px;
    background: #fff3cd;
    color: #856404;
    border-radius: 3px;
    margin: 2px;
}

.node-card-footer {
    padding: 8px 12px;
    border-top: 1px solid #e8e8e8;
    background: #fafafa;
}

.node-created {
    font-size: 10px;
    color: #888;
}

.host-link {
    color: #0366d6;
    text-decoration: none;
}

.host-link:hover {
    text-decoration: underline;
}

/* K8s Manager Window */
.k8s-manager {
    display: flex;
    height: 100%;
    min-height: 0;
}

.k8s-sidebar {
    width: 260px;
    min-width: 200px;
    max-width: 350px;
    background: #f0f0f0;
    border-right: 2px solid #808080;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
}

.k8s-sidebar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    background: linear-gradient(180deg, #326CE5, #1a4db3);
    color: white;
    font-weight: bold;
    font-size: 12px;
}

.k8s-sidebar-title {
    display: flex;
    align-items: center;
    gap: 6px;
}

.k8s-ns-controls {
    padding: 8px 10px;
    background: #e0e0e0;
    border-bottom: 1px solid #c0c0c0;
}

.k8s-toggle {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    font-size: 10px;
}

.k8s-toggle input {
    margin: 0;
}

.k8s-toggle-label {
    user-select: none;
}

.k8s-namespace-filter {
    padding: 6px 8px;
    border-bottom: 1px solid #c0c0c0;
    background: #f8f8f8;
}

.k8s-namespace-filter input {
    width: 100%;
    padding: 5px 8px;
    border: 2px inset #c0c0c0;
    font-size: 11px;
    background: #fff;
}

.k8s-namespace-list {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    background: #fff;
}

.k8s-ns-group-header {
    padding: 6px 10px;
    background: #e8e8e8;
    font-size: 10px;
    font-weight: bold;
    color: #555;
    text-transform: uppercase;
    border-bottom: 1px solid #d0d0d0;
    position: sticky;
    top: 0;
    z-index: 1;
}

.k8s-ns-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    cursor: pointer;
    font-size: 11px;
    border-bottom: 1px solid #e8e8e8;
    transition: background 0.1s;
}

.k8s-ns-item:hover {
    background: #e8f0ff;
}

.k8s-ns-item.selected {
    background: #326CE5;
    color: white;
}

.k8s-ns-item.tenant {
    border-left: 3px solid #28a745;
}

.k8s-ns-item.system .k8s-ns-name {
    font-style: italic;
    color: #888;
}

.k8s-ns-item.selected .k8s-ns-name {
    color: white;
}

.k8s-ns-icon {
    font-size: 14px;
    flex-shrink: 0;
}

.k8s-ns-name {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 500;
}

.k8s-ns-status {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.k8s-ns-status.active {
    background: #28a745;
    box-shadow: 0 0 4px rgba(40, 167, 69, 0.5);
}

.k8s-ns-status.inactive {
    background: #dc3545;
}

.k8s-main {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #f5f5f5;
}

/* Resource Type Bar */
.k8s-resource-types {
    display: flex;
    gap: 2px;
    padding: 6px 8px;
    background: linear-gradient(180deg, #e8e8e8, #d8d8d8);
    border-bottom: 1px solid #a0a0a0;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.k8s-resource-btn {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 5px 10px;
    background: #f0f0f0;
    border: 1px solid #c0c0c0;
    border-radius: 3px;
    cursor: pointer;
    font-size: 10px;
    transition: all 0.15s;
}

.k8s-resource-btn:hover {
    background: #fff;
    border-color: #326CE5;
}

.k8s-resource-btn.active {
    background: #326CE5;
    color: white;
    border-color: #326CE5;
    box-shadow: 0 2px 4px rgba(50, 108, 229, 0.3);
}

.k8s-resource-icon {
    font-size: 12px;
}

.k8s-resource-label {
    font-weight: 500;
}

.k8s-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 12px;
    background: #fff;
    border-bottom: 1px solid #d0d0d0;
    flex-shrink: 0;
    gap: 12px;
}

.k8s-toolbar-left {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.k8s-toolbar-center {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    justify-content: center;
}

.k8s-toolbar-right {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}

.k8s-current-ns {
    font-size: 12px;
    color: #333;
    white-space: nowrap;
}

.k8s-search-box {
    position: relative;
}

.k8s-search-box input {
    padding: 5px 10px;
    border: 2px inset #c0c0c0;
    font-size: 11px;
    background: #fff;
    width: 200px;
}

.k8s-status-filters {
    display: flex;
    gap: 4px;
}

.k8s-filter-btn {
    padding: 4px 10px;
    background: #f0f0f0;
    border: 1px solid #c0c0c0;
    border-radius: 12px;
    cursor: pointer;
    font-size: 10px;
    transition: all 0.15s;
}

.k8s-filter-btn:hover {
    background: #e0e0e0;
}

.k8s-filter-btn.active {
    background: #326CE5;
    color: white;
    border-color: #326CE5;
}

.k8s-content {
    flex: 1;
    overflow: auto;
    padding: 12px;
    background: #fff;
}

.k8s-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: #888;
}

.k8s-empty-icon {
    font-size: 64px;
    margin-bottom: 16px;
    opacity: 0.5;
}

.k8s-error {
    color: #dc3545;
    padding: 20px;
    text-align: center;
    font-weight: bold;
    background: #fff5f5;
    border: 1px solid #f5c6cb;
    border-radius: 4px;
}

.k8s-empty {
    color: #888;
    padding: 20px;
    text-align: center;
    font-style: italic;
}

/* K8s Table */
.k8s-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    font-size: 11px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
}

.k8s-table th,
.k8s-table td {
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid #e8e8e8;
}

.k8s-table th {
    background: linear-gradient(180deg, #f8f8f8, #f0f0f0);
    font-weight: 600;
    color: #444;
    position: sticky;
    top: 0;
    z-index: 1;
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: 0.5px;
    border-bottom: 2px solid #e0e0e0;
}

.k8s-table tr:hover {
    background: #f5f8ff;
}

.k8s-table tr:last-child td {
    border-bottom: none;
}

.k8s-table td strong {
    color: #333;
}

.k8s-table code {
    background: #f0f0f0;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 10px;
    color: #555;
}

.k8s-status {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 600;
}

.k8s-status.success {
    background: #e8f5e9;
    color: #2e7d32;
}

.k8s-status.warning {
    background: #fff8e1;
    color: #f57c00;
}

.k8s-status.error {
    background: #ffebee;
    color: #c62828;
}

.k8s-type-badge {
    display: inline-block;
    padding: 3px 8px;
    background: #e3f2fd;
    color: #1565c0;
    border-radius: 3px;
    font-size: 10px;
    font-weight: 500;
}

.k8s-actions {
    white-space: nowrap;
}

.btn-tiny {
    padding: 4px 8px;
    font-size: 11px;
    min-width: auto;
    border: 1px solid #d0d0d0;
    background: #f8f8f8;
    cursor: pointer;
    margin: 0 2px;
    border-radius: 3px;
    transition: all 0.15s;
}

.btn-tiny:hover {
    background: #e8e8e8;
    border-color: #b0b0b0;
}

.btn-tiny.danger {
    background: #fff5f5;
    border-color: #f5c6cb;
    color: #c62828;
}

.btn-tiny.danger:hover {
    background: #ffebee;
    border-color: #e57373;
}

/* K8s Filter Info */
.k8s-filter-info {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: #e3f2fd;
    border: 1px solid #90caf9;
    border-radius: 4px;
    margin-bottom: 12px;
    font-size: 11px;
    color: #1565c0;
}

/* K8s Pod Table Extensions */
.k8s-row-icon {
    text-align: center;
    width: 30px;
    font-size: 12px;
}

.k8s-ready-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 600;
}

.k8s-ready-badge.complete {
    background: #e8f5e9;
    color: #2e7d32;
}

.k8s-ready-badge.partial {
    background: #fff8e1;
    color: #f57c00;
}

.k8s-restarts {
    color: #555;
}

.k8s-restarts.warning {
    color: #d84315;
    font-weight: 600;
}

/* Ensure scrollbar visibility for K8s windows */
.k8s-manager .window-content,
.k8s-logs-viewer .window-content,
.k8s-yaml-editor .window-content,
.k8s-resource-detail .window-content {
    overflow: hidden !important;
}

/* Loading state */
.k8s-content .loading,
.k8s-namespace-list .loading {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
    color: #666;
    font-style: italic;
}

/* Keyboard shortcut hints */
.k8s-shortcut-hint {
    font-size: 9px;
    color: #888;
    background: #f0f0f0;
    padding: 2px 4px;
    border-radius: 2px;
    margin-left: 4px;
}

/* K8s Resource Detail */
.k8s-resource-detail {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.k8s-detail-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 15px;
    background: linear-gradient(180deg, #f8f8f8, #e8e8e8);
    border-bottom: 1px solid #c0c0c0;
    flex-shrink: 0;
}

.k8s-detail-title {
    display: flex;
    align-items: center;
    gap: 8px;
}

.k8s-detail-icon {
    font-size: 20px;
}

.k8s-detail-name {
    font-size: 14px;
    font-weight: bold;
    color: #333;
}

.k8s-detail-actions {
    display: flex;
    gap: 6px;
}

.k8s-resource-tabs {
    display: flex;
    gap: 2px;
    padding: 6px 8px 0;
    background: #e0e0e0;
    border-bottom: 1px solid #a0a0a0;
    flex-shrink: 0;
}

.k8s-detail-tab {
    padding: 8px 18px;
    background: #d0d0d0;
    border: 1px solid #a0a0a0;
    border-bottom: none;
    border-radius: 4px 4px 0 0;
    cursor: pointer;
    font-size: 11px;
    font-weight: bold;
    transition: all 0.15s;
}

.k8s-detail-tab:hover {
    background: #e8e8e8;
}

.k8s-detail-tab.active {
    background: #fff;
    border-bottom: 1px solid #fff;
    margin-bottom: -1px;
    color: #326CE5;
}

.k8s-detail-content {
    flex: 1;
    overflow: hidden;
    background: #fff;
    min-height: 0;
}

.k8s-detail-panel {
    display: none;
    height: 100%;
    overflow: hidden;
}

.k8s-detail-panel.active {
    display: flex;
    flex-direction: column;
}

/* Scrollable wrappers for detail panels */
.k8s-json-wrapper,
.k8s-events-wrapper,
.k8s-yaml-wrapper {
    flex: 1;
    overflow: auto;
    padding: 12px;
    min-height: 0;
}

.k8s-json {
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
    font-size: 12px;
    background: #1e1e1e;
    color: #d4d4d4;
    padding: 16px;
    border-radius: 4px;
    overflow: visible;
    white-space: pre;
    margin: 0;
    line-height: 1.5;
}

.k8s-yaml {
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
    font-size: 12px;
    background: #1e1e1e;
    color: #d4d4d4;
    padding: 16px;
    border-radius: 4px;
    overflow: visible;
    white-space: pre;
    margin: 0;
    line-height: 1.5;
}

/* K8s Events Table */
.k8s-events-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
    background: #fff;
}

.k8s-events-table th,
.k8s-events-table td {
    padding: 8px 12px;
    text-align: left;
    border-bottom: 1px solid #e0e0e0;
}

.k8s-events-table th {
    background: #f5f5f5;
    font-weight: bold;
    color: #333;
    position: sticky;
    top: 0;
}

.k8s-events-table tr:hover {
    background: #f8f8f8;
}

.k8s-events-table tr.warning {
    background: #fff8e1;
}

.k8s-events-table tr.warning:hover {
    background: #fff3cd;
}

.event-type {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: bold;
}

.event-type.normal {
    background: #e8f5e9;
    color: #2e7d32;
}

.event-type.warning {
    background: #ffebee;
    color: #c62828;
}

/* No events message */
.k8s-events-wrapper p {
    padding: 20px;
    text-align: center;
    color: #888;
    font-style: italic;
}

/* K8s YAML Editor */
.k8s-yaml-editor {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.k8s-yaml-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 15px;
    background: linear-gradient(180deg, #f8f8f8, #e8e8e8);
    border-bottom: 1px solid #c0c0c0;
    flex-shrink: 0;
}

.k8s-yaml-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
}

.k8s-yaml-icon {
    font-size: 16px;
}

.k8s-yaml-actions {
    display: flex;
    gap: 6px;
}

.k8s-yaml-editor-wrapper {
    flex: 1;
    overflow: hidden;
    min-height: 0;
    display: flex;
}

.k8s-yaml-textarea {
    flex: 1;
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
    font-size: 13px;
    padding: 16px;
    border: none;
    background: #1e1e1e;
    color: #d4d4d4;
    resize: none;
    outline: none;
    line-height: 1.5;
    tab-size: 2;
    overflow: auto !important;
}

.k8s-yaml-textarea::placeholder {
    color: #666;
}

/* K8s Logs Viewer */
.k8s-logs-viewer {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.k8s-logs-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 15px;
    background: linear-gradient(180deg, #f8f8f8, #e8e8e8);
    border-bottom: 1px solid #c0c0c0;
    flex-shrink: 0;
}

.k8s-logs-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
}

.k8s-logs-icon {
    font-size: 16px;
}

.k8s-logs-controls {
    display: flex;
    align-items: center;
    gap: 8px;
}

.k8s-logs-controls label {
    font-size: 11px;
    color: #555;
}

.k8s-logs-select {
    padding: 4px 8px;
    border: 1px solid #c0c0c0;
    font-size: 11px;
    background: #fff;
    border-radius: 3px;
}

.k8s-logs-content {
    flex: 1;
    overflow: auto !important;
    background: #0d1117;
    padding: 0;
    min-height: 0;
}

.k8s-logs {
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
    font-size: 12px;
    color: #c9d1d9;
    white-space: pre;
    margin: 0;
    padding: 16px;
    line-height: 1.6;
    min-height: 100%;
}

/* K8s Manager Scrollbars */
.k8s-namespace-list,
.k8s-content,
.k8s-json-wrapper,
.k8s-events-wrapper,
.k8s-yaml-wrapper,
.k8s-logs-content,
.k8s-yaml-textarea {
    scrollbar-width: auto;
    scrollbar-color: #888 #2d2d2d;
}

.k8s-namespace-list::-webkit-scrollbar,
.k8s-content::-webkit-scrollbar,
.k8s-json-wrapper::-webkit-scrollbar,
.k8s-events-wrapper::-webkit-scrollbar,
.k8s-yaml-wrapper::-webkit-scrollbar,
.k8s-logs-content::-webkit-scrollbar,
.k8s-yaml-textarea::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}

.k8s-namespace-list::-webkit-scrollbar-track,
.k8s-content::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 4px;
}

.k8s-json-wrapper::-webkit-scrollbar-track,
.k8s-events-wrapper::-webkit-scrollbar-track,
.k8s-yaml-wrapper::-webkit-scrollbar-track,
.k8s-logs-content::-webkit-scrollbar-track,
.k8s-yaml-textarea::-webkit-scrollbar-track {
    background: #2d2d2d;
    border-radius: 4px;
}

.k8s-namespace-list::-webkit-scrollbar-thumb,
.k8s-content::-webkit-scrollbar-thumb {
    background: #c0c0c0;
    border-radius: 4px;
    border: 2px solid #f0f0f0;
}

.k8s-json-wrapper::-webkit-scrollbar-thumb,
.k8s-events-wrapper::-webkit-scrollbar-thumb,
.k8s-yaml-wrapper::-webkit-scrollbar-thumb,
.k8s-logs-content::-webkit-scrollbar-thumb,
.k8s-yaml-textarea::-webkit-scrollbar-thumb {
    background: #555;
    border-radius: 4px;
    border: 2px solid #2d2d2d;
}

.k8s-namespace-list::-webkit-scrollbar-thumb:hover,
.k8s-content::-webkit-scrollbar-thumb:hover {
    background: #a0a0a0;
}

.k8s-json-wrapper::-webkit-scrollbar-thumb:hover,
.k8s-events-wrapper::-webkit-scrollbar-thumb:hover,
.k8s-yaml-wrapper::-webkit-scrollbar-thumb:hover,
.k8s-logs-content::-webkit-scrollbar-thumb:hover,
.k8s-yaml-textarea::-webkit-scrollbar-thumb:hover {
    background: #777;
}

.k8s-namespace-list::-webkit-scrollbar-corner,
.k8s-content::-webkit-scrollbar-corner {
    background: #f0f0f0;
}

.k8s-json-wrapper::-webkit-scrollbar-corner,
.k8s-events-wrapper::-webkit-scrollbar-corner,
.k8s-yaml-wrapper::-webkit-scrollbar-corner,
.k8s-logs-content::-webkit-scrollbar-corner,
.k8s-yaml-textarea::-webkit-scrollbar-corner {
    background: #2d2d2d;
}

/* Data table generic style */
.data-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 2px inset #c0c0c0;
    background: #fff;
    font-size: 11px;
}

.data-table th,
.data-table td {
    padding: 6px 10px;
    text-align: left;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
}

.data-table th {
    background: #e0e0e0;
    font-weight: bold;
    color: #333;
}

.data-table tr:hover {
    background: #f5f5f5;
}

.data-table tr:last-child td {
    border-bottom: none;
}

.data-table th:last-child,
.data-table td:last-child {
    border-right: none;
}

