body {
    margin: 0;
    font-family: Arial, sans-serif;
    background: #f4f4f4;
}

/* NAVBAR */
.navbar {
    background: #1a73e8;
    padding: 14px;
    color: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav-title {
    font-size: 22px;
    font-weight: bold;
}

.nav-links {
    list-style: none;
    display: flex;
    gap: 18px;
    margin: 0;
    padding: 0;
}

.nav-links li {
    display: inline;
}

.nav-links a {
    color: white;
    text-decoration: none;
    font-weight: bold;
}

.nav-links a:hover {
    text-decoration: underline;
}

/* CONTENT */
.page-container {
    padding: 30px;
}

.welcome-box {
    background: white;
    padding: 20px;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
    max-width: 540px;
}

/* ===========================================================
   SYRINGE GAUGE STYLES (Realistic, Responsive)
   =========================================================== */
.syringe-wrapper {
    width: 100%;
    max-width: 700px;
    margin-inline: auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

.syringe-svg {
    width: 100%;
    height: auto;
}

/* Barrel (outer) */
.syringe-barrel {
    fill: #dfe4e7;
    stroke: #a0a6aa;
    stroke-width: 2;
}

/* Barrel (inner) */
.syringe-barrel-inner {
    fill: #ffffff;
    stroke: #ccd1d6;
    stroke-width: 1;
}

/* Fill (Clinical Blue) */
.syringe-fill {
    fill: #26c6da;
    transition: all 0.3s ease-in-out; /* matches Python speed */
}

/* Plunger */
.syringe-plunger {
    fill: #b8c1c7;
    stroke: #889196;
    stroke-width: 1.2;
    transition: all 0.3s ease-in-out;
}

/* Plunger handle (left) */
.syringe-plunger-handle {
    fill: #9ea7ad;
    stroke: #7d848a;
    stroke-width: 1.2;
}

/* Needle */
.syringe-needle {
    stroke: #5a6066;
    stroke-width: 2;
}

.syringe-needle-tip {
    stroke: #5a6066;
    stroke-width: 1.5;
}

/* Ticks */
.syringe-tick {
    stroke: #444;
    stroke-width: 1;
}

/* Top labels */
.syringe-label {
    font-size: 10px;
    fill: #555;
    text-anchor: middle;
    dominant-baseline: middle;
}

/* Units text inside barrel */
.syringe-label-units {
    font-size: 14px;
    fill: #333;
    font-weight: bold;
    text-anchor: middle;
    dominant-baseline: middle;
}
/* ----------------------------------------------------
   TODAY'S SCHEDULE STATUS COLORS
   ---------------------------------------------------- */

/* Base look */
.schedule-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    margin-bottom: 8px;
    border-radius: 6px;
    font-weight: bold;
    background: #1f1f1f;
    transition: all 0.25s ease;
}

/* Logged (green) */
.schedule-item.logged {
    background: rgba(0, 255, 0, 0.12);
    border: 1px solid #00ff00;
    color: #00ff00;
}

/* Due Soon (orange) */
.schedule-item.due_soon {
    background: rgba(255, 165, 0, 0.12);
    border: 1px solid orange;
    color: orange;
}

/* Past Due (red) */
.schedule-item.past_due {
    background: rgba(255, 0, 0, 0.12);
    border: 1px solid red;
    color: red;
}

/* Pending (gray) */
.schedule-item.pending {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid #555;
    color: #ccc;
}

/* Optional hover glow (looks really clean) */
.schedule-item:hover {
    filter: brightness(1.15);
    transform: scale(1.01);
}
.profile-dropdown-wrapper {
    position: relative;
}

.profile-dropdown-caret {
    position: absolute;
    right: 12px;
    top: 58%;
    transform: translateY(-50%);
    pointer-events: none;
    color: #ced4da;      /* Light gray - MUCH better visibility */
    font-size: 18px;
    opacity: 0.9;
}




