body, html { margin: 0; padding: 0; height: 100%; font-family: Arial, sans-serif; background-color: #f0f0f0; } body { display: flex; flex-direction: column; } /* Topbar */ .topbar { background-color: #cc0000; color: white; padding: 10px; display: flex; justify-content: space-between; align-items: center; } .topbar-logo { font-weight: bold; font-size: 18px; } @media screen and (max-width: 450px) { .topbar-nav-container { display: flex; align-items: stretch; flex-direction: column; gap: 4px; } } .topbar-nav-button { background-color: #aa0000; color: white; border: none; padding: 5px 10px; margin-left: 10px; cursor: pointer; } /* Main */ .main-container { max-width: 1000px; width: calc(100% - 40px); /* Ensures horizontal margins 20px */ margin-block: 20px; /* Vertical margins */ background-color: white; border: 2px solid #cc0000; padding: 20px; display: flex; flex-direction: column; flex: 1; /* Grow and take up available space in parent */ overflow: hidden; /* Clips not fitting content */ align-self: center; /* Center horizontally */ box-sizing: border-box; /* Include padding and border in element's total width and height */ } @media screen and (max-width: 450px) { .main-container { width: calc(100% - 10px); /* Ensures horizontal margins 5px */ margin-block: 5px; } } .main-header { color: #cc0000; margin-top: 0; } .main-container-content { width: 100%; margin-top: 20px; flex: 1; /* Grow and take up available space in parent (main-container) */ overflow-y: auto; /* Enable vertical scrolling if content not fits */ padding: 10px; display: flex; flex-direction: column; gap: 10px; } .main-bottom-button { background-color: #cc0000; color: white; border: none; padding: 10px 20px; font-size: 16px; cursor: pointer; display: block; width: 100%; } /* Table */ th, td { border: 1px solid #ddd; padding: 8px; text-align: left; } th { background-color: #f2f2f2; } table { width: 100%; } /* Certs */ .certs-actions-td { display: flex; gap: 5px; } @media screen and (max-width: 450px) { /* Stack buttons vertically */ .certs-actions-td { flex-direction: column; align-items: stretch; } } @media screen and (min-width: 451px) and (max-width: 600px) { .certs-actions-td { /* Needs to be duplicated */ flex-direction: column; align-items: center; } .certs-actions-td button { width: 70%; } } /* Logs */ .logs-filters-container { display: flex; flex-direction: row; flex-wrap: wrap; gap: 10px; width: 80%; box-sizing: border-box; } .logs-filters-item { display: flex; gap: 5px; flex-direction: row; align-items: center; } .logs-filters-fieldset { display: flex; align-items: center; /* Centers legend vertically in fieldset */ padding-block: 5px; padding-left: 30px; margin-left: 50px; position: relative; } .logs-filters-legend { position: absolute; left: -40px; background-color: white; } /* Modal */ .modal-layer-container { /* Lays 100% over the whole page */ display: none; /* Initially hidden */ position: fixed; /* Stay in place relive to the browser window */ z-index: 1; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; /* Scroll if needed */ background-color: rgba(0, 0, 0, 0.4); /* slightly shaded background */ } .modal-content { background-color: #fefefe; margin-inline: auto; /* Horizontally */ margin-block: 15%; /* Vertically */ padding: 20px; border: 1px solid #888; width: 80%; max-width: 600px; } .modal-close { color: #aaa; float: right; /* Positioned at the right relative to the modal-content */ font-size: 28px; font-weight: bold; cursor: pointer; } .modal-cert-form { display: flex; flex-direction: column; gap: 5px; } .modal-layer-container input, .modal-layer-container select { padding: 5px; } .modal-layer-container button { background-color: #cc0000; color: white; border: none; padding-inline: 20px; /* Horizontal */ padding-block: 10px; /* Vertical */ cursor: pointer; } .modal-layer-container pre { background-color: #f0f0f0; padding: 10px; overflow-x: auto; /* Horizontal scrolling if needed */ } .modal-layer-container .logs { background-color: #f0f0f0; padding: 10px; min-height: 200px; overflow-y: auto; } /* Generic */ .small-button { background-color: #cc0000; color: white; border: none; padding: 5px 10px; margin-right: 5px; cursor: pointer; }