/*
CSS Structure for Training Application
------------------------------------
The CSS is split into multiple files for better organization and maintainability:

1. base.css (this file):
   - Contains common styles used across all pages
   - Includes basic layout, navigation, typography
   - Defines color scheme and common elements
   - Used by all pages as the foundation

2. tracking.css:
   - Specific styles for the tracking page
   - Contains form styles, table layouts
   - Datepicker customization

3. graph.css:
   - Specific styles for the statistics/graph page
   - Chart container and controls
   - Graph-specific responsive design

4. training-program.css:
   - Specific styles for the training program page
   - Exercise forms and layouts
   - Training program specific components
*/

/* Base styles */
body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #2f3136;
    color: #fff;
    line-height: 1.4;
    font-size: 14px;
}

/* Top Bar with Login Status */
.top-bar {
    background-color: #202225;
    padding: 8px 16px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 15px;
    border-bottom: 1px solid #36393f;
}

.welcome-text {
    color: #fff;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.logout-btn, .login-btn {
    background-color: #4CAF50;
    color: white;
    padding: 6px 12px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 14px;
    transition: background-color 0.2s;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.logout-btn:hover, .login-btn:hover {
    background-color: #45a049;
}

.logout-btn .material-icons, .login-btn .material-icons {
    font-size: 18px;
}

/* Navigation menu */
.navigation-menu {
    background-color: #202225;
    padding: 0;
    border-bottom: 1px solid #36393f;
}

.navigation-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
}

.navigation-menu li {
    margin: 0;
}

.navigation-menu a {
    color: #fff;
    text-decoration: none;
    padding: 10px 20px;
    display: inline-block;
    font-size: 14px;
    transition: background-color 0.2s, color 0.2s;
}

.navigation-menu a:hover {
    background-color: #36393f;
}

.navigation-menu a.active {
    background-color: #36393f;
    color: #4CAF50;
}

/* Main Content */
.container {
    max-width: 800px;
    margin: 0 auto;
    padding: 15px;
}

/* Page Headers */
h1 {
    color: #4CAF50;
    font-size: 20px;
    text-align: center;
    margin: 15px 0;
    font-weight: normal;
}

/* Common Form Elements */
input[type="text"],
input[type="number"],
input[type="password"],
select,
textarea {
    background-color: #202225;
    border: 1px solid #36393f;
    color: white;
    padding: 4px 8px;
    border-radius: 3px;
    font-size: 14px;
    font-family: inherit;
}

input:focus,
select:focus,
textarea:focus {
    outline: none;
    border-color: #4CAF50;
}

/* Datepicker customization */
.ui-datepicker {
    font-family: inherit;
    font-size: 14px;
}

.ui-datepicker-trigger {
    filter: invert(56%) sepia(97%) saturate(349%) hue-rotate(84deg) brightness(95%) contrast(88%);
}

/* Common Buttons */
.btn,
button,
input[type="submit"] {
    background-color: #4CAF50;
    color: white;
    border: none;
    padding: 4px 12px;
    border-radius: 3px;
    cursor: pointer;
    font-size: 14px;
    font-family: inherit;
    transition: background-color 0.2s;
}

.btn:hover,
button:hover,
input[type="submit"]:hover {
    background-color: #45a049;
}

/* Mobile Styles */
@media (max-width: 768px) {
    .container {
        padding: 10px;
    }

    .navigation-menu a {
        padding: 8px 12px;
        font-size: 13px;
    }

    .top-bar {
        padding: 8px;
        flex-wrap: nowrap;
    }

    .welcome-text {
        font-size: 13px;
        max-width: 40%;
    }

    .logout-btn, .login-btn {
        padding: 4px 8px;
        font-size: 13px;
    }

    .logout-btn .material-icons, .login-btn .material-icons {
        font-size: 16px;
    }
}
