/* css/style.css */

* { box-sizing: border-box; }

body {
    font-family: 'Segoe UI', Arial, sans-serif;
    margin: 0;
    padding: 0 12px;
    background-color: #f4f7f6;
    color: #333;
}

.container {
    max-width: 720px;
    margin: 100px auto 40px;
    padding: 30px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    text-align: center;
}
.container.narrow { max-width: 420px; }
.container.wide   { max-width: 960px; }

h2 { color: #006400; margin-bottom: 24px; }
.hint { color: #666; font-size: 14px; margin-top: -12px; }

.file-wrapper { margin: 25px 0; }
#fileInput { display: none; }

.custom-file-label {
    display: inline-block;
    padding: 14px 28px;
    background-color: #006400;
    color: white;
    border-radius: 8px;
    cursor: pointer;
    font-size: 16px;
}
.custom-file-label:hover { background-color: #008000; }

#fileName { margin-top: 12px; font-size: 15px; color: #555; word-break: break-all; }

button {
    background-color: #006400;
    color: white;
    padding: 12px 30px;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    cursor: pointer;
    margin: 8px;
}
button:hover { background-color: #008000; }
button:disabled { background-color: #888; cursor: not-allowed; }
button.danger { background-color: #c0392b; padding: 8px 16px; margin: 0; font-size: 14px; }
button.danger:hover { background-color: #e74c3c; }

#progressContainer { margin: 30px 0; display: none; }
#progressBarContainer { width: 100%; height: 28px; background-color: #e0e0e0; border-radius: 50px; overflow: hidden; }
#progressBar { width: 0%; height: 100%; background: linear-gradient(90deg, #4CAF50, #66cc66); border-radius: 50px; transition: width 0.3s ease; }
#progressText { text-align: center; margin-top: 10px; font-weight: 600; color: #006400; font-size: 15px; }
.controls { margin-top: 15px; }

#status { margin-top: 25px; font-size: 17px; min-height: 60px; word-break: break-word; }

.success { color: #006400; }
.error { color: #c0392b; }

/* login */
.login-form { display: flex; flex-direction: column; text-align: left; gap: 6px; }
.login-form label { font-weight: 600; margin-top: 8px; }
.login-form input[type=text], .login-form input[type=password] {
    padding: 12px; font-size: 16px; border: 1px solid #ccc; border-radius: 8px; width: 100%;
}
.login-form button { margin: 18px 0 0; }

/* files.php */
.table-wrap { width: 100%; overflow-x: auto; }
table { border-collapse: collapse; width: 100%; margin-top: 10px; }
th, td { padding: 12px 8px; text-align: left; border-bottom: 1px solid #ddd; }
td.fname { word-break: break-all; }
tr:hover { background-color: #f2f2f2; }
th { background-color: #4CAF50; color: white; }
td form { margin: 0; }

@media (max-width: 600px) {
    .container { margin: 80px auto 20px; padding: 18px; border-radius: 12px; }
    button { padding: 12px 18px; margin: 6px 4px; }
    th, td { padding: 8px 4px; font-size: 14px; }
}
