.progress-gestational {
            height: 12px;
            border-radius: 10px;
            margin: 1rem 0;
        }
        .gestational-card {
            background: #f8f9fc;
            border-radius: 16px;
            padding: 1rem;
            margin: 1rem 0;
            border-left: 5px solid #2c7da0;
        }
        .calendar-container {
            background: white;
            border-radius: 16px;
            padding: 1rem;
            margin-top: 1.5rem;
            border: 1px solid #e9ecef;
            box-shadow: 0 2px 8px rgba(0,0,0,0.05);
        }
        .calendar-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 1rem;
        }
        .calendar-grid {
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            text-align: center;
            gap: 4px;
        }
        .calendar-weekday {
            font-weight: 600;
            color: #6c757d;
            padding: 0.5rem 0;
            font-size: 0.85rem;
        }
        .calendar-day {
            padding: 0.5rem 0;
            border-radius: 40px;
            font-size: 0.85rem;
            position: relative;
            cursor: default;
        }
        .calendar-day.marked {
            font-weight: bold;
        }
        .calendar-day.lmp { background-color: #e3f2fd; color: #0d6efd; }
        .calendar-day.ovulation { background-color: #d1e7dd; color: #198754; }
        .calendar-day.conception-start, .calendar-day.conception-end { background-color: #fff3cd; color: #856404; }
        .calendar-day.due-date { background-color: #f8d7da; color: #b02a37; }
        .calendar-day.today { border: 2px solid #2c7da0; background-color: #f0f7ff; }
        .calendar-legend {
            display: flex;
            flex-wrap: wrap;
            gap: 1rem;
            margin-top: 1rem;
            justify-content: center;
            font-size: 0.75rem;
        }
        .legend-color {
            width: 14px;
            height: 14px;
            display: inline-block;
            border-radius: 4px;
            margin-right: 4px;
        }
        .calendar-nav-btn {
            background: none;
            border: 1px solid #ddd;
            border-radius: 20px;
            padding: 0.25rem 0.75rem;
            transition: all 0.2s;
        }
        .calendar-nav-btn:hover {
            background-color: #f1f3f5;
        }
        @media (max-width: 576px) {
            .calendar-day { font-size: 0.7rem; padding: 0.3rem 0; }
            .calendar-weekday { font-size: 0.7rem; }
        }