kontrolvm/assets/style.css
KuJoe 013372dbb8
Some checks failed
PHPMD / Run PHPMD scanning (push) Has been cancelled
Psalm Security Scan / php-security (push) Has been cancelled
Reapply "Removed dark theme"
This reverts commit 1af69f2a60.
2025-03-26 19:58:26 -04:00

767 lines
No EOL
12 KiB
CSS

* {
padding: 0;
margin: 0;
text-decoration: none;
list-style: none;
box-sizing: border-box;
}
body {
font-family: "Montserrat", sans-serif;
margin: 0;
background-color: #f4f4f7;
color: #333;
display: flex;
min-height: 100vh; /* Ensure the body takes at least the full viewport height */
flex-direction: column; /* Arrange content vertically */
}
.container {
min-width: 30%;
max-width: 1500px;
margin: 20px auto;
padding: 20px;
background-color: #fff;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
flex: 1;
}
h1 {
text-align: center;
margin-bottom: 30px;
}
.grid {
display: grid;
grid-template-columns: repeat(5, 1fr); /* 5 equal-width columns */
grid-gap: 20px;
}
.card {
background-color: #fff;
border-radius: 5px;
padding: 10px;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
text-align: center;
}
.card h2 {
margin-top: 0;
color: #333;
}
.card .value {
font-size: 2.5rem;
font-weight: bold;
margin-bottom: 10px;
color: #28a745;
}
.card .unit {
font-size: 0.8rem;
color: #777;
}
.table-container {
border-radius: 8px;
}
table {
width: 100%;
border-collapse: collapse;
margin-top: 20px;
text-align: center;
}
th {
padding: 12px;
border: 1px solid #dee2e6;
white-space: nowrap;
background-color: #F0F0F5;
}
td {
padding: 12px;
border: 1px solid #dee2e6;
white-space: nowrap;
}
.tname {
font-weight: bold;
}
.ticon {
display: none;
}
nav {
background: #0082e6;
height: 80px;
width: 100%;
}
label.logo {
color: white;
font-size: 25px;
line-height: 80px;
padding: 0 100px;
font-weight: bold;
}
label.logo img {
height: 64px;
margin-top: 10px;
}
nav ul {
float: right;
margin-right: 20px;
}
nav ul li {
display: inline-block;
line-height: 80px;
margin: 0 5px;
}
nav ul li a {
color: white;
font-size: 17px;
padding: 7px 13px;
border-radius: 3px;
text-transform: uppercase;
}
nav ul li a.active, nav ul li a:hover {
background: #1b9bff;
transition: .5s;
}
.checkbtn {
font-size: 22px;
color: white;
float: right;
line-height: 80px;
margin-right: 30px;
cursor: pointer;
display: none;
}
#check {
display: none;
}
.theme-switch {
position: relative;
display: inline-block;
width: 30px;
height: 16px;
margin-bottom: 10px;
float: right;
}
.theme-switch input {
opacity: 0;
width: 0;
height: 0;
}
.slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ccc;
-webkit-transition: .4s;
transition: .4s;
border-radius: 16px;
}
.slider:before {
position: absolute;
content: "";
height: 13px;
width: 13px;
left: 2px;
bottom: 2px;
background-color: white;
-webkit-transition: .4s;
transition: .4s;
border-radius: 50%;
}
input:checked + .slider {
background-color: #2196F3;
}
input:focus + .slider {
box-shadow: 0 0 1px #2196F3;
}
input:checked + .slider:before {
-webkit-transform: translateX(13px);
-ms-transform: translateX(13px);
transform: translateX(13px);
}
/* Rounded sliders */
.slider.round {
border-radius: 16px;
}
.slider.round:before {
border-radius: 50%;
}
.footer {
background-color: #fff;
color: #333;
padding: 10px 20px;
text-align: center;
font-size: 0.8rem;
width: 100%;
}
.footer .container {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.social-links {
list-style: none;
margin: 0;
padding: 0;
display: flex;
}
.social-links li {
margin: 0 5px;
}
.social-links a {
text-decoration: none;
color: #333;
display: flex;
align-items: center;
}
.social-links i {
margin-right: 5px;
}
form {
max-width: 1000px;
margin: 0 auto;
}
.form-group {
margin-bottom: 20px;
}
input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
select {
width: 100%;
padding: 10px;
border: 1px solid #ced4da;
border-radius: 4px;
box-sizing: border-box;
}
/* Style the disabled input */
input[type="text"]:disabled {
background-color: #e9ecef;
opacity: 1;
}
/* Hide MFA options initially */
.mfa-options {
display: none;
}
.success-message {
color: #155724;
background-color: #d4edda;
border: 1px solid #c3e6cb;
padding: 10px;
margin-bottom: 15px;
border-radius: 4px;
text-align: center;
}
.error-message {
color: #dc3545;
background-color: #f8d7da;
border: 1px solid #f5c6cb;
padding: 10px;
margin-bottom: 15px;
border-radius: 4px;
text-align: center;
}
.stylish-button {
background-color: #007bff; /* Blue background color */
color: white;
padding: 12px 20px;
margin:5px;
border: none;
border-radius: 5px; /* Slightly rounded corners */
cursor: pointer;
font-size: 16px;
transition: all 0.3s ease; /* Smooth transition for hover effects */
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Subtle shadow */
}
.stylish-button:hover {
background-color: #0069d9; /* Darker blue on hover */
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* More pronounced shadow */
}
.stylish-button:active {
transform: translateY(1px); /* Slight downward shift on click */
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); /* Reduced shadow on click */
}
.modal {
display: none;
position: fixed;
z-index: 1;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0,0,0,0.4);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
max-width: 300px;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
}
.close:hover,
.close:focus {
color: black;
text-decoration: none;
cursor: pointer;
}
/* Customize the label (the container) */
.checkbox-container {
display: block;
position: relative;
padding-left: 35px;
margin-bottom: 5px;
cursor: pointer;
font-size: 16px;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
text-align: center;
}
/* Hide the browser's default checkbox */
.checkbox-container input {
opacity: 0;
cursor: pointer;
height: 0;
width: 0;
}
/* Create a custom checkbox */
.checkmark {
position: absolute;
top: 0;
height: 25px;
width: 25px;
background-color: #eee;
border-radius: 5px; /* Add rounded corners */
transition: background-color 0.3s ease; /* Smooth transition for hover effect */
left: 50%; /* Position the checkmark in the horizontal center */
transform: translateX(-50%);
}
/* On mouse-over, add a grey background color */
.checkbox-container:hover input ~ .checkmark {
background-color: #ccc;
}
/* When the checkbox is checked, add a blue background */
.checkbox-container input:checked ~ .checkmark {
background-color: #2196F3;
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
content: "";
position: absolute;
display: none;
}
/* Show the checkmark when checked */
.checkbox-container input:checked ~ .checkmark:after {
display: block;
}
/* Style the checkmark/indicator */
.checkbox-container .checkmark:after {
left: 9px;
top: 5px;
width: 5px;
height: 10px;
border: solid white;
border-width: 0 3px 3px 0;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
.submenu {
list-style: none;
padding: 10px 0; /* Adjust or remove top padding */
background-color: #f0f0f5;
border-bottom: 1px solid #e0e0e5; /* Add a bottom border for separation */
width: 100%;
position: relative; /* Or static */
text-align: center; /* Center the submenu items */
}
.submenu li {
display: inline-block;
margin: 0 10px; /* Adjust spacing between items */
}
.submenu a {
text-decoration: none;
color: #333;
font-weight: 500;
padding: 8px 12px;
border-radius: 3px;
transition: background-color 0.3s ease;
}
.submenu a.active {
font-weight: bold;
}
.submenu a:hover {
background-color: #e0e0e5;
}
.actionButtons {
width:100%;
margin:auto;
display:flex;
justify-content:center;
}
/* Tooltip container */
.tooltip {
position: relative;
display: inline-block;
border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
}
/* Tooltip text */
.tooltip .tooltiptext {
visibility: hidden;
width: 120px;
background-color: black;
color: #fff;
text-align: center;
padding: 5px 0;
border-radius: 6px;
font-size: 14px;
/* Position the tooltip text - see examples below! */
position: absolute;
z-index: 1;
}
/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
visibility: visible;
}
.filter-table .quick {
margin-left: 0.5em;
font-size: 0.8em;
text-decoration: none;
}
.fitler-table .quick:hover {
text-decoration: underline;
}
.highlight-red {
background-color: red;
font-weight: bold;
}
.highlight-yellow {
background-color: yellow;
font-weight: bold;
}
.notice {
background-color: orange;
font-weight: bold;
}
input[type="text"]:read-only {
background-color: lightgrey;
}
button.btnaction{
color:#000;
float:left;
margin:10px;
width:80px;
line-height:40px;
font-size:20px;
font-weight:900;
letter-spacing:3px;
text-transform:inherit;
border:5px solid #000;
box-shadow:1px 1px 0, 2px 2px 0, 3px 3px 0, 4px 4px 0,5px 5px 0;
}
button.btnaction:active{
top:5px;
left:5px;
box-shadow:0 0 0 0;
}
/* Disk Management Styles */
.disk-management {
display: flex;
flex-wrap: wrap; /* Allow wrapping on smaller screens */
gap: 20px;
}
.disk-list,.add-disk {
flex: 1;
min-width: 300px; /* Ensure minimum width for each section */
background-color: #f8f9fa;
border: 1px solid #dee2e6;
border-radius: 5px;
padding: 20px;
}
.disk-list h3,.add-disk h3 {
margin-top: 0;
}
#disk-list-items {
list-style: none;
padding: 0;
}
/* Modal Styles */
.modal {
display: none;
position: fixed;
z-index: 1;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgba(0, 0, 0, 0.4);
}
.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 30%;
}
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
}
.close:hover,.close:focus {
color: black;
text-decoration: none;
cursor: pointer;
}
.pagination {
width: 100%;
margin-top: 20px;
text-align: center;
}
.pagination a {
padding: 5px 10px;
margin: 2px;
border: 1px solid #ddd;
text-decoration: none;
color: #333;
}
.pagination a.active {
background-color: #007bff;
color: white;
}
.admin-update-banner {
background-color: #ffeb3b; /* Yellow background for attention */
color: #333; /* Dark text for readability */
padding: 15px;
text-align: center;
font-weight: bold;
position: fixed; /* Fixed position to stay at the top */
top: 0;
left: 0;
width: 100%;
z-index: 1000; /* Ensure it's on top of other elements */
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Subtle shadow */
display: flex; /* Use flexbox for layout */
justify-content: center; /* Center content horizontally */
align-items: center; /* Center content vertically */
}
.admin-update-banner a {
color: #007bff; /* Link color */
text-decoration: none;
margin-left: 10px; /* Space between text and link */
}
.admin-update-banner a:hover {
text-decoration: underline; /* Underline on hover */
}
.admin-update-banner .close-button {
margin-left: 20px;
cursor: pointer;
font-size: 1.2em;
color: #555;
}
.admin-update-banner .close-button:hover {
color: #333;
}
/* Responsive Styles */
@media (max-width: 1150px) {
.checkbtn {
display: block;
}
label.logo {
font-size: 22px;
}
nav ul {
position: fixed;
width: 100%;
height: 100vh;
background: #2c3e50;
top: 80px;
left: -100%;
text-align: center;
transition: all .5s;
}
nav ul li {
display: block;
margin: 50px 0;
line-height: 30px;
}
nav ul li a {
font-size: 20px;
}
a:hover, a.active {
background: none;
color: #0082e6;
}
#check:checked~ul {
left: 0;
}
section {
height: calc(100vh - 80px);
}
.grid {
width: 100%;
grid-template-columns: repeat(1, 1fr); /* 1 column on smaller screens */
}
body.dark-mode .grid {
width: 100%;
grid-template-columns: repeat(1, 1fr); /* 1 equal-width columns */
}
table {
width: 100%;
overflow-x: auto;
}
td {
display: block;
}
.tname {
background-color: #F0F0F5;
border: 2px solid #000;
width: 100%;
}
th {
display: none;
}
.ticon {
display: inline-block;
}
.footer .container {
flex-direction: column;
align-items: center;
}
.social-links {
margin-top: 10px;
flex-wrap: wrap;
display: flex;
justify-content: center;
width: 100%;
}
.social-links li {
margin: 5px;
}
.darkmode {
margin: 7px 0 0 -1px;
}
.submenu li {
display: block;
margin: 15px;
}
.actionButtons {
display: block;
}
}