html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; /* Prevents scrollbars from affecting the layout */ display: flex; justify-content: center; align-items: center; background-color: #f4f4f4; } *, *:before, *:after { box-sizing: border-box; /* Include padding and borders in the width and height */ } .content-container { width: 98%; /* Use nearly full width of the viewport */ max-width: 98%; /* Limit maximum width to prevent horizontal scrollbar */ height: 95vh; /* Use nearly full height of the viewport */ min-height: 95vh; /* Ensure it at least covers most of the viewport height */ background-color: white; /* Background color for the container */ padding: 20px; /* Padding inside the container */ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Shadow for depth perception */ border-radius: 8px; /* Rounded corners for aesthetics */ display: flex; flex-direction: column; align-items: center; /* Center children horizontally */ justify-content: flex-start; /* Align content to start vertically */ overflow: auto; /* Enable scrolling inside container if content overflows */ } /* Ensure the table expands to fill the container */ table { width: 100%; /* Full width of its parent */ max-width: 100%; border-collapse: collapse; } input[type="file"], input[type="text"] { width: 100%; margin: 10px 0; padding: 8px; border: 1px solid #ccc; border-radius: 4px; } button { background-color: #4CAF50; color: white; border: none; padding: 10px 20px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; margin: 4px 2px; cursor: pointer; border-radius: 4px; transition: background 0.3s ease; } button:hover { background-color: #45a049; } #preview { padding: 10px; margin-top: 20px; background-color: white; border: 1px solid #ddd; border-radius: 4px; width: 100%; } th, td { border: 1px solid #ccc; padding: 8px; text-align: center; word-wrap: break-word; /* Allows words to break and wrap onto the next line */ overflow-wrap: break-word; /* Ensures that long words can be broken and wrapped */ word-break: break-all; /* Forces the breaking of long words at any character to prevent overflow */ } th:nth-child(-n+5) { width: 12%; } th { background-color: #f0f0f0; text-align: center; } #loader { display: none; position: fixed; left: 0; top: 0; width: 100%; height: 100%; z-index: 1000; background: rgba(255, 255, 255, 0.8); display: flex; align-items: center; justify-content: center; } .spinner { border: 4px solid rgba(0, 0, 0, .1); width: 36px; height: 36px; border-radius: 50%; border-left-color: #09f; animation: spin 1s ease infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .button-loader { display: inline-block; width: 12px; height: 12px; border: 2px solid #f3f3f3; /* Light grey */ border-top: 2px solid #3498db; /* Blue */ border-radius: 50%; animation: spin 2s linear infinite; }